2010-12-15 29 views
3

bashスクリプトの行は順次実行されますか?何故か私には何の理由も見当たらないが、スクリプトをbashするのは本当に新しく、コマンドを順番に実行する必要がある。例えばbashスクリプトの実行順序

:あなたがバックグラウンドでのいずれかのコマンドを実行するためにあなたの方法の外に出ない限り、次の1が始まる前に

#!/bin/sh 
# will this get finished before the next command starts? 
./someLongCommand1 arg1 
./someLongCommand2 arg1 

答えて

4

はい...、1が終了します。

3

はい、これらは順番に実行されます。ただし、バックグラウンドでプログラムを実行すると、スクリプト内の次のコマンドは、バックグラウンドコマンドが開始された直後に実行されます。

#!/bin/sh 
# will this get finished before the next command starts? 
./someLongCommand1 arg1 & 
./someLongCommand2 arg1 & 

この結果、スクリプトはすぐに完了します。ただし、開始されたコマンドは完了しません。 (アンパサンド(&)を名前の後に置いて、コマンドをバックグラウンドで開始します。