「&」演算を順次実行する方法

「&」演算を順次実行する方法

私のスクリプトで次のコマンドを実行します。

 SCRIPT_1="ksh -x script1.sh & ksh -x script2.sh";
 SCRIPT_2="ksh -x script3.sh & ksh -x script4.sh";
 eval $SCRIPT_1;
 sleep 20s;
 eval $SCRIPT_2;

$SCRIPT_2完了したら実行したいです$SCRIPT_1。ただし、現在は別々の行で実行されているかどうかに関係なく、すべて同時に実行されます。

次のスクリプトを実行する前に他のスクリプトが完了するのを待つ方法についてのアイデアはありますか?

ベストアンサー1

SCRIPT_1="ksh -x script1.sh & bg_pid=$!; ksh -x script2.sh; wait $bg_pid";
SCRIPT_2="ksh -x script3.sh & bg_pid=$!; ksh -x script4.sh; wait $bg_pid";
eval $SCRIPT_1;
sleep 20s;
eval $SCRIPT_2;

おすすめ記事