以下のように、別のスクリプト(do_manythings)を介してバックグラウンドでスクリプト(do_something)を呼び出しています。
nohup do_something &
呼び出された操作(do_something)が完了したことを親スクリプト(do_manythings)でどのように知ることができますか?
答え1
バックグラウンドジョブを開始し、他のアクションを実行してから停止し、バックグラウンドジョブが完了するのを待つには、次のようにします。
いいえdo_something& PID=$! ...もっとたくさん... $ pidを待ってください
または、次のようにジョブが終了したかどうかをテストできます。
いいえdo_something& PID=$! ...もっとたくさん... ps -p $pid > /dev/null [$? == 1]&&echo "すべて消えました!"
答え2
デーモンとして使用するには、参考start-stop-daemon
資料で参照することもできます。/etc/init.d/
do_something
答え3
確認できます
ps -ef | grep 'do_something
結果が表示されたら、スクリプトはまだ実行中です。
また、実行することができます
ps -ef | grep 'your_user_name'
あなたのIDで実行されているすべてのアクティブなタスクを確認してください。