CLIとは何か
CLI(Command Line Interface、コマンドラインインターフェース)は、文字で命令を入力してソフトウェアを操作するための窓口です。ボタンやメニューを使うGUIに対して、CLIではコマンド名、引数、オプションを組み合わせます。
ターミナルを開くことと、CLIツールを使うことは同じではありません。ターミナルという画面から、GitなどさまざまなCLIを操作します。
一文でいうと
CLIとは、ソフトウェアの機能をコマンドラインから呼び出すための操作方法です。
たとえばGitには、変更状態を確認したりコミットしたりするCLIがあります。一方、同じ目的の一部を画面上のボタンで操作できるGUIアプリもあります。どちらもソフトウェアへの入口であり、CLIだけが正しいわけではありません。
個人開発のどこで登場するか
プロジェクト作成、パッケージ管理、テスト、ビルド、Git、クラウドへの公開などで使います。公式手順に短いコマンドが載ることが多いのは、画面配置に依存しにくく、手順をそのまま記録しやすいためです。
CLIは次の場面で特に役立ちます。
同じ操作を何度も再現したい
複数の処理を順番に自動化したい
実行した命令と結果を記録したい
GUIにない細かな設定を指定したい
一度しか行わない操作や、対象を目で確認しながら選びたい操作では、GUIのほうが分かりやすい場合もあります。
一回の操作を部品で捉える
CLIでは、一般に次の部品を組み合わせます。
起動するツールの名前
実行する操作を示すサブコマンド
ファイル名や環境名などの引数
動作を切り替えるオプションやフラグ
詳しい読み方はコマンドとは何かで扱います。同じ --force という名前でも、ツールが違えば影響は違います。オプション名だけから安全性を推測せず、そのツールのヘルプを確認します。
ターミナル、シェル、GUIと区別する
ターミナル:文字の入力と出力を表示する画面
シェル:入力を解釈し、プログラムを実行する環境
CLI:特定のソフトウェアを文字で操作する窓口
GUI:ボタン、メニュー、ウィンドウなどを使う視覚的な窓口
CLIは必ずしも手作業専用ではありません。人がターミナルとは何かで入力することも、スクリプトや自動化が同じCLIを呼び出すこともあります。
本番操作の前に接続先を確認する
CLIは素早く操作できる分、誤ったフォルダー、アカウント、プロジェクト、本番環境へ処理を行う危険もあります。特に公開、削除、課金、権限変更の前には次を確認します。
使用中のツールとバージョン
ログイン中のアカウント
対象のプロジェクトと環境
変更される資源と範囲
確認用、プレビュー、試行実行の有無
失敗時の復元方法
コマンド履歴や画面共有にAPIキーが残ることもあります。秘密値を直接引数へ書くよう求める例は、そのまま採用しません。
次に読む記事
まだ文字入力の画面に慣れていなければターミナルとは何かへ、GitのCLIを使う目的を知りたければGitとは何かへ進みます。
外部サービスをコードから操作する入口は、CLIとは別にAPIとは何かで説明します。