順次完了するジョブの送信

順次完了するジョブの送信

環境変数に依存するジョブが多数ある場合、それらを順番に送信するにはどうすればよいでしょうか。これはうまくいかなかった私の試みです。第 6 週は常に第 5 週より前に送信 (および終了) されます。

#!/bin/sh

(export id=me;
 export pass=welcome;
 export week=5;
 sas -log $HOME/logs/log$week.log sasjob.sas > /dev/null;
 export week=6;
 sas -log $HOME/logs/log$week.log sasjob.sas > /dev/null;
) &

ステートメントを正確な順番で実行する必要があります完了

答え1

私がこれを正しく理解していれば、次のようにすればいいはずです:

for week in 5 6 ; do
    id=me pass=welcome week=$week \
        sas -log "$HOME/logs/log${week}.log" sasjob.sas
done >/dev/null &

関連情報