環境変数に依存するジョブが多数ある場合、それらを順番に送信するにはどうすればよいでしょうか。これはうまくいかなかった私の試みです。第 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 &