質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.48%

  • Ruby

    7933questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Linux

    3902questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • CentOS

    2769questions

    CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

  • Ruby on Rails 4

    2455questions

    Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

  • Ubuntu

    1486questions

    Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

シェル、ターミナル、コマンドプロンプトの違いを教えてください

解決済

回答 5

投稿

  • 評価
  • クリップ 1
  • VIEW 1,839

hirotto57

score 50

現在、Linuxの勉強をしておりまして、その中で、「シェル」、「ターミナル」、「コマンドプロンプト」という言葉が出てきました。検索して調べてみたのですが、いまいち違いがよく分かりません。

Linuxの勉強を初めて初心者のため、「シェル」、「ターミナル」、「コマンドプロンプト」の違いを教えて頂きたいです。宜しくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 5

checkベストアンサー

+3

テレビ電話を使って猫型ロボットにいろいろやってもらうことを想定します。

 ターミナル

テレビ電話。画面とスピーカーとカメラとマイクのセット

 シェル

猫型ロボット。低機能な青い耳なし (bsh) やもっと高機能な黄色いの (zsh) とかある。使うロボットを切り替えることもできる。
猫型ロボット自体に価値があるわけじゃなくて、そいつが持っている四次元ポケットの裏の空間(カーネル = kernel = 核 ≒ CPU やメモリ、ファイルシステム、ネットワークなど) に価値があってそれらを使いたいわけだけど、素人には扱うのが困難なので殻 (shell) である猫型ロボットに代行してもらう。
高機能な猫型ロボットは、適当にお願いしてもうまいことやってくれたり、痒い所に手が届くような機能を提供したり、青い耳なしだと道具 (外部コマンド) を使わないとできない処理を自分で (組み込みコマンド) やってしまったりする。

 コマンドプロンプト

「次、何やればいい?」とシェルから「やるべきこと = コマンド」の入力を「促してくる = プロンプト」言葉のこと。
ちなみに、コマンドプロンプトは猫型ロボットに対して対話しながら何かやってもらう(対話モードのシェル)ときに出てくるもので、猫型ロボットに「これやっといてね」という台本 (= シェルスクリプト) を渡して仕事をやってもらう (シェルスクリプトの実行) ときには出てきません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/06 09:24

    ご回答頂きありがとうございます。身近なものに例えて頂くことでイメージを掴むことができました。とても分かりやすかったです。ありがとうございました。

    キャンセル

  • 2016/05/06 09:41

    え、身近に猫型ロボットがいるんですか? うらやましい。

    という冗談はさておき、他の方の回答が素晴らしいので、私は例えだけに専念させていただきました。

    キャンセル

+2

ターミナル・・・端末
シェル・・・コマンドプロンプトを提供するアプリケーション
コマンドプロンプト・・・対話型でコマンドを実行する環境。本来は、「コマンド入力待ち状態であることを表す記号」

ターミナルにコマンドプロンプトを提供するのがシェルといえる。
一般的な利用用途としては。全ての単語はいわゆる黒い画面を指すw

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/04 15:29

    コメント頂き誠にありがとうございますm(_ _)m
    ターミナル(端末)を用いて、シェルに命令(コマンド)を行う。その後、シェルはカーネルにその命令を伝達する。という認識で合っていますでしょうか?

    キャンセル

  • 2016/05/04 15:38

    そのコメントが合ってるかと言われれば、合ってるんだけど、あなたの認識があってるかと言われれば、曖昧さが多分に残るコメントなのでわかりません^^;

    キャンセル

+2

少し古い人間なので、その観点から回答させて頂きたく思います。

「ターミナル」=端末
元々は、vt100に代表される「端末専用の装置」を意味していたかと思います。
現在の様に、PC(PCという言葉が無い時代)が安価では無く、とても高価な頃、
今、LinuxのPCと同義?(というかLinuxが開発されるずっと以前)で、
UnixのWS(ワークステーション)という言葉で、呼ばれていた頃、
そのWSを操作できる、端末という装置が作られました。

vt100の場合、画面(文字だけが表示できて、80桁×25行ぐらいのみ)と
キーボードだけが実装されて、WSにRS-232Cという通信方式で接続して、
操作可能でした。
本物は、日本語(漢字)の表示ができませんでした。
日本語表示可能な互換品を作っていたメーカーもありました。

その後、その頃の装置と同等の機能を持ったパソコンのソフトを、仮想端末
(物理的な装置ではなくソフトで作った端末)と呼ぶようになり、
現在では、単に、ターミナルと呼んでいます。

「シェル」=殻
他の方がかかれている通りです。自分の場合、bash、tcsh、zshが存在する以前の、
shを最初に思いますが、結局は、OS内部から見た時の「殻」として、人が直接触る
事ができる部分を意味します。

「コマンドプロンプト」
言葉自体が、マイクロソフトのWindowsで最初にでてきたのではないかと思います。
それ以前のMS-DOS(文字だけのコンピュータ)の機能を、仮想的に実現した、
窓という事で、この言葉が出てきたと記憶しています。

語源はこんな感じで、最近では、どれも「大差なし」で使用されている様に感じています。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/06 09:21

    ご回答頂きありがとうございます。自分の知らなかった歴史や用語など知ることができました。とても勉強になりました。

    キャンセル

+1

シェル、コマンドプロンプトはほぼ同義と考えていいと思います。
シェル
ターミナル=端末・・・以下を参照
端末

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/04 15:29

    コメント頂き誠にありがとうございますm(_ _)m
    ターミナル(端末)を用いて、シェルに命令(コマンド)を行う。その後、シェルはカーネルにその命令を伝達する。という認識で合っていますでしょうか?

    キャンセル

+1

ターミナル=端末
本来は、キーボードと文字表示装置を備えた機械のこと(キーボードじゃなくてタッチパネルや音声認識の場合もありますが)。
質問されている文脈の場合では、端末エミュレーター(ソフトウェアで端末のふりをするもの)のことです。
LinuxのX画面だと、メニューに「端末」というのがあると思います。これがソフトウェアによる端末、つまり、端末エミュレーターのことです。あるいは、Windowsからログインするのであれば、端末エミュレーターソフトウェアのTeraTermとかPuTTYとかいった物を使いますが、それのことです。

シェル=殻
本来は外側の殻(貝殻とか)の事で、ITでは人間とのやりとりをするソフトウェアのことを指すことが多いです。WindowsのExplorerとかですね。
質問されている文脈の場合だと、bashとかtcshとかzshといったソフトのことを指します。

コマンドプロンプト=指令(コマンド)を促すもの
本来は、「コマンドを入れて下さい」という合図に表示する文字列のことです。READYという英単語だったり、$ という記号だったり。現在ではいきなり「コマンドプロンプト」というと、何故か、WindowsのCMD.EXEというソフトウェアないし、それを実行したときに表示される画面のことを指します。
質問されている文脈だと、コマンドを入れろと言うシェルからの合図の「[user@host ~]$ 」とかの文字列を指すか、あるいは、シェルが対話的にコマンドを入れて実行、コマンドを入れて実行、の繰り返しを行っている状態のことを指します。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/06 09:21

    ご回答頂きありがとうございます。自分の知らなかった用語など教えて頂きとても勉強になりました。

    キャンセル

関連した質問

同じタグがついた質問を見る

  • Ruby

    7933questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Linux

    3902questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • CentOS

    2769questions

    CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

  • Ruby on Rails 4

    2455questions

    Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

  • Ubuntu

    1486questions

    Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。