基本的に、bash スクリプトがノード スクリプトを永久に実行するようにしようとしています。次のbashスクリプトを作成しました。
#!/ビン/バッシュ 真の間; 行う cd /マイスコープ/ nohup.out のリンクを解除 ノード myscript.js 睡眠 6 完了 & エコー $! >ピッド
実行すると、指定されたスクリプトでノードを起動し、ノードが終了するかどうかを確認し、終了した場合は 6 秒間スリープし、ノードを再度開くことを期待しています。また、バックグラウンドで実行され、「pid」というファイルに pid (bash pid) が書き込まれることを期待しています。
上記で説明したものはすべて期待どおりに動作するようですが、bash スクリプトの pid が強制終了されるとノード スクリプトの実行が停止することも期待しています。練習してもうまくいきません。確かに、bash スクリプトは強制終了されますが、ノード スクリプトは実行され続け、それが私を驚かせています。
bashスクリプトをバックグラウンドに送信せずにctrl + cを入力することで、ターミナルでテストしました。両方のスクリプトが強制終了されます。
バックグラウンドプロセスの仕組みについて何かを理解していないのは明らかです。神のために、誰か私を助けることができますか?