【初心者向け解説】コマンドの実行

【初心者向け解説】コマンドの実行

コマンドラインは次のような要素から成り立っています

コマンド  オプション 引数

コマンドについて

「コマンド」は、実行可能なプログラムまたはスクリプトです。「オプション」は、コマンドに対して動作を指示するスイッチです。

ハイフンに続けて指定しますが、例外的にハイフンを必要としないコマンドもあります。引数はコマンドに渡す値です。引数の有無で動作が変わるコマンドや、引数を取らないコマンド、複数の引数が必要なコマンドなどがあります。

並べて実行

コマンドは1行に複数を並べて実行することができます。次の例ではpwdコマンドの実行後、lsコマンドが続けて実行されます。pwdコマンドはカレントディレクトリの絶対パスを表示するコマンドです。

$ pwd;ls

実行コマンド(正常分岐)

コマンドを「;」で区切った場合最初のコマンドが正常に終了してもエラーなどで正常に終了しなくても、2番目のコマンドが実行されます。最初のコマンドの実行結果に応じて2番目のコマンドの動作を変更するには「&&」か「||」を使います。&&の場合、最初のコマンドが正常に終了した時だけ二番目のコマンドが実行されます。

$ ls testdir && pwd

実行コマンド(異常分岐)

「||」の場合最初のコマンドが正常に終了しなかった時だけ二番目のコマンドが実行されます。次の例ではカレントディレクトリにtest.txtファイルがあればその内容を表示し、ない場合には file not found と表示メッセージを表示します。

$ cat test.txt ||echo “file not found”

複数まとめて実行

複数のコマンドをひとまとまりにして扱いたい場合は()を使います次の例ではdatepwdlsの実行結果をまとめてlogファイルに出力します。

$ (date; pwd; ls) > test.log

コマンドを実行するとシェルはたら新たなシェルを起動しそのシェル上でコマンドを実行します現在のシエル内でコマンドが実行されるようにするには{}でくくります。

複数実行のコマンドの実行制御表 

コマンド説明
コマンド1 ; コマンド2コマンド1に続いてコマンド2を実行する
コマンド1 &&コマンド2 コマンド1が正常に終了した時のみコマンド2を実行する
コマンド1 || コマンド2 コマンド1が正常に終了しなかった場合のみコマンド2を実行する
(コマンド1 ; コマンド2 )コマンド1とコマンド2を、ひとまとまりのコマンドグループとして実行する
{コマンド1 ; コマンド2 }現在のシェル内でコマンド1とコマンド2を実行する