バックグラウンドでSSHコマンドを実行する

バックグラウンドでSSHコマンドを実行する

フォローアップを手伝ってください。

ssh user@server "source script.csh"私のホームサーバーでやっています。

script.csh10個のコマンドがあるとします。

  • 最初から3番目のコマンドはすぐに実行されます。

  • 4番目のコマンドを完了するには10〜12時間かかります。

  • コマンド5〜10もすぐに実行されます。

  • 最後のコマンドはデータをホームサーバーにコピーします。

私はリモートサーバーのシェルを10〜12時間維持したいと思います。また、コマンドを順次実行したいと思います。リモートサーバーでスクリプトがどのように完了するかを確認するために、ホームサーバーに返されたファイルを監視し続けます。

どうすればいいですか?

ベストアンサー1

screenSSH接続を閉じるためにバックグラウンドで何かを実行するために使用できます。私はそれに慣れていませんが、csh呼び出しは次のようになります。

ssh user@server "screen -S longrunscript csh -c 'source script.csh'"

-S longrunscript(周囲に別のスクリーンセッションがある場合でも)簡単に接続できるように、スクリーンセッションに名前を付けますscreen -x longrunscript

おすすめ記事