Linuxサーバーでコードを実行しています。実行には数時間かかるので、サーバーへの接続が失われた場合にコードが実行されていることを確認するために、Nohup
を使用する必要があります。繰り返しますが、結果を見るのに何時間も待たなければならないので、コードの進行状況(%)を出力するカウンターを定義しました。サーバーへの接続を失ったり、ターミナルを閉じたりした場合、コードがまだ実行されていることを確認できる唯一の方法は、top
を使用することです。出力コンソール(進行状況を示すメッセージ)を再度表示できる方法はありますか?
標準出力と標準エラーをファイルにリダイレクトして、そのファイルを見ることができます。例えば:
Nohup command 2>&1 > outputfile &
manページのデフォルトの動作に注意してください:
標準出力が端末の場合、可能であれば「Nohup.out」に出力を追加し、そうでない場合は「$ HOME/Nohup.out」に追加します。標準エラーが端末の場合、標準出力にリダイレクトします
本当に実行できます
Nohup command &
そして、Nohup.outを見てください
別の端末から以下を実行すると、リアルタイムで出力を確認できます。
tail -f Nohup.out