リモートサーバーへの接続が失われた場合、このコマンドは実行されますか?

リモートサーバーへの接続が失われた場合、このコマンドは実行されますか?

リモートサーバーで次のコマンドを実行した場合:

$ sleep 3h ; date ; nohup long-running-process ; date

...2時間後に接続が切断された場合、コマンド全体が実行されますか?

それ以外の場合、接続が失われてもすべてが実行されるようにコマンドを変更するにはどうすればよいですか?

答え1

いいえ、処理前にsleep接続が切断され、コマンド中に端末に接続されているすべての子プロセスにSIGHUP信号が送信されるためです。nohup

特定の時間にコマンドを実行する必要がある場合は、次のことができます。

  • コマンドをスクリプトに入れてスクリプトを実行しないでください。
  • 使うat働くワンタイムニーズに
  • 使うcron働く正規勤務の場合
  • 使用tmuxまたはscreen端末をサーバーに接続したままにします。

古いことわざのように猫の皮をむく方法はいくつかあります。

関連情報