2009-03-01 56 views
3

プロセスが終了したときにコマンドを実行します。私はすでに解決策を持っていますが、BASHをさらに学習する方法としてこれを行うより良い方法があるかどうかを検討しています。私が持っているものは次のとおりです。プロセスが終了したときにコマンドを実行します。

$ ps -e | grep scp 
7673 pts/1 00:01:17 scp 
$ while [ $(ps 7673 2>&1 >/dev/null; echo $?) = 0 ]; do sleep 1; done; echo "Scp doesn't exist any more" 

これはうまくいっています。あなたはこの1つまたは別のより洗練されたソリューションを改善していますか?

答えて

6

$ (commandToWaitOn; commandToRunAfter) &

ここで、オプションの '&'はバックグラウンドに配置します。

またはコマンドを独立して起動した場合、PIDを見つけて、使用

wait PID; commandToRunAfter 
関連する問題