シェルコマンド 【shell command】 OSコマンド / OS command
OSには利用者への情報の提示や利用者からの操作を受け付けるための「シェル」(shell)という部分があり、文字列で指示を与え、結果を文字列で表示するものを「CUIシェル」(CUI:Character User Interface)あるいは「コマンドラインインタフェース」(CLI:Command-Line Interface)という。
CUIシェルで利用者が指示に用いる命令語を「コマンド」(command)と呼び、シェルによって内容が解釈され、シェルプログラム自身か、外部の実行ファイルによって実行される。利用者は対話的に操作できるシェル画面にコマンドを入力することで様々な処理をシステムに依頼することができる。
記述形式
一般的なコマンドの記述形式は「コマンド名 オプション 入力データ」となっている。コマンド名は命令の種類で、外部コマンドの場合は実行ファイル名がそのままコマンド名となる。オプションは「-a」「/q」のように先頭がハイフンやスラッシュで始まる短い記号列で、細かい動作の指示を行う。コマンドの処理対象となるデータやファイルなどがある場合は最後に記述する。
UNIX系OSやWindowsなどでは処理結果を表示するのではなく他のコマンドやファイルに出力する記法が用意されている。例えば、「コマンド1 | コマンド2」のように複数のコマンドを縦棒(|)で列挙すると、左のコマンドの実行結果を右のコマンドの入力にして連続で実行する。「コマンド>ファイル名」のように大なり記号「>」を用いると実行結果の出力先にファイルなど画面表示以外を指定できる。
システムによる違い
どのようなコマンドがあり、どのようなオプションを指定できるかはOSやシェルの種類によって異なる。例えば、UNIX系OSでファイル一覧を表示するのはlsコマンドだが、Windowsではdirコマンドを用いる。
LinuxやFreeBSD、商用UNIXなどのUNIX系OS同士は基本的なコマンド体系は共通しているが、オプションの種類や記法が微妙に異なる場合がある。同じOSでも複数のシェルを選択できる場合もあり、シェルの種類によってもコマンドの種類やオプションが異なることがある。
Linuxの場合、OSの中核部であるLinuxカーネルは共通しているが、シェルやインストーラ、周辺プログラムを一体化した「Linuxディストリビューション」という配布パッケージを自由に作成・配布できるため、ディストリビューションによってもシェルの種類や同梱されている外部コマンドが異なる場合がある。