リモートコマンドの実行を維持し、出力を保存します。

リモートコマンドの実行を維持し、出力を保存します。

想像してください。

コンピュータにSSHを接続し、新しい画面セッションを開き、スクリプトを起動しました。

数日後、SSHを介してマシンに再接続し、スクリーンセッションに再接続して生成された出力を確認しました。出力を後ろにスクロールできませんでした。

私が知る限り、screenはstdout出力の「画面サイズ」を保存します。私のスクリプトが48時間以内に100行の出力を生成すると、すべての内容が表示されず、最後の40行しか表示されません。screen引き続き実行中のスクリプトがすべてのstdoutを保存してローカルコンピュータで実行されるスクリプトであるかのように、画面とPgUp / PgDnを再接続する方法はありますか?

たぶんscreenこれが最善の方法ではないかもしれません。ログアウトした後、リモートシステムでスクリプトを実行し、後でプロセスに再接続してすべての出力を表示するためのより良い方法はありますか?

ベストアンサー1

出力をファイルに簡単に保存できます

my_command > mylogfile

コマンドが実行されたときに何が起こるかを確認するには、tail2番目の画面で次のものを使用できます。

tail -f mylogfile

出力全体を見ることができるだけでなく、処理することもできます(比較、検索...)

編集する使用したくない場合は、screenいつでも使用してnohupセッションを閉じてください。

nohup my_command > mylogfile &

おすすめ記事