UNIX:以前のジョブが完了した後にのみジョブを送信しますか?

UNIX:以前のジョブが完了した後にのみジョブを送信しますか?

同じ.sasジョブの繰り返しパラメータを送信したいのですが、以前のジョブが完了した後にのみジョブを送信したいと思います。私の試みは次のとおりです。

    #!/bin/ksh

    export weeks="1 2 3"
    for week in $weeks
    do

    sas -log job$week.log job.sas > /dev/null & pid_ind=$!
    wait $pid_ind

    echo "job complete for week $week"
    done

これにより、すべてのジョブがほぼ同時に送信され、キューに入れられます。誰でも "wait"コマンドについて詳しく説明できますか?最後のSAS操作が完了するまでコミットを延期しようとしています。十分、提出していない。

ベストアンサー1

バグがあります。 forループはdone代わりにキーワードで終了しますfi

for variable in lists
do
    # do something here
done

おすすめ記事