ターミナル・シェル・CLIの違い
このセクションで学ぶこと
「ターミナル」「シェル」「CLI」「コマンドライン」...
エンジニアの会話には似たような言葉がたくさん出てきます。 これらの違いを理解して、混乱しないようにしましょう。
3つの言葉の関係
┌─────────────────────────────────────────┐
│ ターミナル(Terminal) │
│ ┌───────────────────────────────────┐ │
│ │ シェル(Shell) │ │
│ │ ┌─────────────────────────────┐ │ │
│ │ │ コマンド(Command) │ │ │
│ │ │ ls, cd, pwd など │ │ │
│ │ └─────────────────────────────┘ │ │
│ └───────────────────────────────────┘ │
└─────────────────────────────────────────┘
ターミナル(Terminal)とは
一言で言うと
「黒い画面」そのもの。文字を表示するウィンドウ。
役割
- 文字を表示する
- キーボード入力を受け付ける
- それだけ!(計算や処理はしない)
例え話
ターミナルは「テレビ画面」のようなもの。 映像を映すだけで、番組を作っているわけではありません。
代表的なターミナルアプリ
| OS | アプリ名 |
|---|---|
| Windows | Windows Terminal, コマンドプロンプト, PowerShell |
| Mac | Terminal.app, iTerm2 |
| Linux | GNOME Terminal, Konsole |
シェル(Shell)とは
一言で言うと
コマンドを解釈して実行するプログラム。ターミナルの「中身」。
役割
- 入力されたコマンドを理解する
- OSに「これをやって」と伝える
- 結果をターミナルに返す
例え話
シェルは「通訳者」のようなもの。 あなたの言葉(コマンド)をコンピュータの言葉に翻訳します。
代表的なシェル
| シェル名 | 特徴 | 主な利用環境 |
|---|---|---|
| bash | 最も一般的、情報が多い | Linux, Mac(旧) |
| zsh | bashの拡張版、便利機能が多い | Mac(現在のデフォルト) |
| PowerShell | Windows向け、高機能 | Windows |
| fish | 初心者に優しい、補完が賢い | 全OS |
今どのシェルを使っているか確認する
bash
echo $SHELL出力例:
/bin/zsh # zshを使用中
/bin/bash # bashを使用中
CLI(Command Line Interface)とは
一言で言うと
「文字で操作する方式」全般を指す言葉。
GUIとの比較
| 項目 | CLI | GUI |
|---|---|---|
| 正式名称 | Command Line Interface | Graphical User Interface |
| 操作方法 | キーボードで文字入力 | マウスでクリック |
| 見た目 | 黒い画面、文字だけ | アイコン、ボタン、ウィンドウ |
| 学習コスト | 最初は高い | 低い(直感的) |
| 作業効率 | 慣れれば高い | 慣れても限界がある |
| 自動化 | しやすい | しにくい |
図解
【GUI】 【CLI】
┌──────────────────┐ ┌──────────────────┐
│ 📁 Documents │ │ $ ls │
│ 📁 Downloads │ vs │ Documents │
│ 📁 Pictures │ │ Downloads │
│ │ │ Pictures │
│ [開く] [削除] │ │ $ _ │
└──────────────────┘ └──────────────────┘
マウスでクリック キーボードで入力
コマンドライン、コンソール...他の言葉
よく聞く言葉の整理
| 言葉 | 意味 | 使われ方 |
|---|---|---|
| コマンドライン | CLIと同じ意味 | 「コマンドラインで実行して」 |
| コンソール | ターミナルとほぼ同じ | 「コンソールを開いて」 |
| プロンプト | 入力待ちの記号($や>) | 「プロンプトが表示されたら」 |
| 端末 | ターミナルの日本語訳 | 「端末を起動して」 |
実務では...
正直、これらの言葉は 混同して使われることが多い です。
「ターミナル開いて」「コマンドライン叩いて」「シェルで実行して」
→ 全部 「黒い画面でコマンドを打って」 という意味です。
まとめ
| 用語 | 役割 | 例え |
|---|---|---|
| ターミナル | 文字を表示する画面 | テレビ画面 |
| シェル | コマンドを解釈・実行 | 通訳者 |
| CLI | 文字で操作する方式 | 操作スタイル |
覚えておくこと
- ターミナル = 見た目(画面)
- シェル = 中身(プログラム)
- CLI = 操作方法の総称
厳密な違いを覚える必要はありません。 大事なのは「黒い画面でコマンドを打つ」ことができるようになること!
次のステップへ
用語の違いは理解できましたか?
次のセクションでは、実際にターミナルを起動してみましょう。
推定読了時間: 25分