nohup は SSH セッションで次のプロンプトを表示しません。

nohup は SSH セッションで次のプロンプトを表示しません。

SSH経由でリモートUbuntuシステムに接続するとします。nohup接続が失われる可能性がある場合は、スクリプトを実行してそのログをファイルにリダイレクトしたいと思います。私が実行したコマンドは

nohup bash myscript.sh > log.txt &

その後、端末はスクリプトのPIDとメッセージを印刷します。

nohupは入力を無視し、stderrをstdoutにリダイレクトします。

Ctrlそこでカーソルが停止し、D+ を使用して SSH セッションを終了し、再度ログインしないと、他のコマンドを実行できません。 SSHセッションを開いたまま再度ログインする必要なく、次のターミナルプロンプトに進みたいです。これを達成する方法はありますか?

ベストアンサー1

予想通り、このコマンドはバックグラウンドで実行されます。ただし、この特別なケースには競合状態があり、出力メッセージはシェルプロンプトの後に部分的に記録されます。

視覚的な結果は、シェルプロンプトがnohupメッセージの前にあるか、メッセージが完全に上書きされることです。

最終結果は、シェルがプロンプトを作成したため、次のコマンドを実行する準備ができていることです。 Enterを押して新しいプロンプトを生成するか、次のコマンドを直接入力できます。

おすすめ記事