CLI
Command Line Interface
概要(サマリー)
キーボードから文字(コマンド)を打ち込んでパソコンを操作する仕組みのことである。
普段使っているGUI(マウスやタップで操作する画面)の反対にあたる。
Claude CodeやCodexなどを使ったAIコーディングでは、「ターミナル」というツールを使ってCLI操作を行う場面が頻出する。はじめは黒い画面に文字が羅列されていてとっつきにくく感じるが、開発には欠かせない。
詳細解説
CLIは Command Line Interface の略で、画面上の入力欄に特定のコマンドを打ち込み、その結果を文字で受け取る操作方式である。
マウスでボタンを押したり、アイコンをクリックしたりするGUIと違い、「命令を文字で直接伝える」 のが特徴である。
たとえばGUIでは、フォルダを開いてファイルを探し、右クリックして操作することが多い。
一方CLIでは、以下のようにコマンドを入力して処理する。
ls
cd documents
mkdir test
上の例では、順に「ファイル一覧を見る」「documentsフォルダへ移動する」「testというフォルダを作る」という意味になる。
このようにCLIでは、操作の一つひとつを文字(コマンド)で指定する。
CLIとターミナルの関係
初心者が混同しやすいが、CLIは「操作の方式」であり、ターミナルは「その操作を行うための画面やアプリ」である。
たとえばMacの「ターミナル」や、Windowsの「PowerShell」「コマンドプロンプト」、VS CodeやCursorの統合ターミナルは、CLI操作を行う場所である。
つまり、
- CLI = 文字で命令する仕組み
- ターミナル = その命令を入力する画面
という関係になる。
なぜ開発でCLIがよく使われるのか
CLIは見た目こそ地味だが、開発やサーバー運用では非常に強力である。主な理由は以下の通り。
1. 操作が速い
慣れると、何度も画面を開いてクリックするより、コマンドを打ったほうが速い。
特に、ファイル移動・検索・削除・実行などを大量に行う場面では、CLIの方が効率的である。
2. 同じ作業を再現しやすい
GUIで行った操作は、「どこをどうクリックしたか」が人によってぶれやすい。
しかしCLIなら、実行したコマンドをそのまま残せるため、同じ作業を他の人が再現しやすい。
3. 自動化しやすい
複数のコマンドをまとめてスクリプト化すれば、同じ作業を自動化できる。
そのため、ビルド・テスト・デプロイ・バックアップなどの定型作業と相性が良い。
4. AIコーディングと相性が良い
Claude CodeやCodexのようなAIコーディング支援では、CLIベースで操作する場面が多い。
AIが
- ファイルを検索する
- 開発サーバーを起動する
- テストを走らせる
- Git操作を補助する
といった流れでコマンドを扱うため、CLIの基礎を知っていると、AIの提案内容も理解しやすくなる。
CLIでよく使う代表的な操作
初心者が最初に触れることが多いのは、次のような操作である。
ファイルやフォルダを確認する
ls
今いる場所を確認する
pwd
フォルダを移動する
cd folder-name
フォルダを作成する
mkdir new-folder
ファイルを削除する
rm file.txt
プログラムを実行する
python app.py
このようにCLIでは、短い単語の組み合わせで多くの操作ができる。
CLIのメリット
- キーボードだけで素早く操作できる
- 大量のファイルや複雑な処理を扱いやすい
- 操作内容を記録・共有しやすい
- 自動化やスクリプト化がしやすい
- サーバー管理や開発現場で広く使われている
CLIのデメリット
- 最初はコマンドを覚える必要がある
- 見た目で直感的にわかりにくい
- コマンドを間違えると、意図しない処理をすることがある
- 削除系コマンドなどは、GUIより慎重さが求められる
特に rm のような削除コマンドは、ゴミ箱を経由せず即時削除になるため注意が必要である。
より詳しくAIに聞いてみよう
- CLIって何ですか?GUIとの違いも含めて初心者向けに説明してください。
- ターミナルとCLIの違いを、中学生でもわかるように教えてください。
cd、ls、mkdirの意味を、実例つきで解説してください。- CLIでよく使う基本コマンドを10個、用途つきで一覧にしてください。
- 削除系コマンドが怖いので、CLIを安全に使うための注意点を教えてください。
- Claude CodeやCodexでCLIがよく出てくる理由を、初心者向けに説明してください。