複数のコマンドを同時に実行するには、&(アンパサンド) 特殊文字を使用できます。 &のもう 1 つの用途は、コマンドをバックグラウンドで実行することです。ただし、その場合は、&を 1 回使用し、コマンドまたはスクリプトの最後に使用する必要があります。例:
# [some command or script] &
&(アンパサンド) を使用してコマンドを同時に実行する
2 つのコマンドを同時に実行するには、2 つ以上のコマンドの間に &特殊文字を使用します。構文は次のとおりです:
# command1 & command2 & command3 ..
たとえば、3 つのコマンド「uname -a」、「pwd」、および「ls」を同時に実行する場合は、次のように使用できます。
# hostname & pwd & date
出力は次のようになります:
# hostname & pwd & date [1] 3253 [2] 3254 /root geeklab Sat Jan 18 05:46:07 UTC 2020 [1]- Done hostname [2]+ Done pwd
単一の &を使用すると、コマンドが失敗しても次のコマンドが実行されます。
&&(二重アンパサンド) を使用してコマンドを同時に実行する
2 番目のジョブ/コマンドが最初のジョブ/コマンドが終了するまで待機する必要がある場合は、コマンドの間に &&を使用します。そのため、文の実行中にエラーが発生した場合、文は停止します。例:
# hostname && pwd && date
出力例:
$ hostname && pwd && date geeklab01 /root Sat Jan 18 12:23:34 IST 2020
間違ったコマンドを使用して、次のコマンドが実行されるかどうかを確認してみましょう:
$ hostname && wrngcmd && date geeklab01 -bash: wrngcmd: command not found
上記のように、最後のコマンド「date」は以前のコマンドとして実行されませんでした。