web-dev-qa-db-ja.com

`Nohup.out`の名前を変更できますか?

Nohup some_command &を実行すると、出力はNohup.outになります。 man Nohupinfo Nohupを見るように言っています。

標準出力が端末の場合、コマンドの標準出力はファイル 'Nohup.out'に追加されます。書き込めない場合は、ファイル '$ HOME/Nohup.out'に追加されます。書き込みができない場合、コマンドは実行されません。

しかし、Nohupを使用して/Nohup.outへ出力するコマンドをすでに1つ持っていて、別のNohupコマンドを実行したい場合、出力をNohup2.outにリダイレクトできますか?

226
David LeBauer
Nohup some_command &> Nohup2.out&

そして出来上がり。


Bashバージョン<4の古い構文

Nohup some_command > Nohup2.out 2>&1&
369
ismail

どういうわけか、上の答えは私にはうまくいきませんでした。末尾に&が付いているので、コマンドを実行した後にコマンドプロンプトに戻ることはしませんでした。代わりに、私は単に試してみました

Nohup some_command > Nohup2.out&

そしてそれは私が望むように機能します。他の誰かが同じ状況にある場合に備えて、これをここに残してください。参考のためにBash 4.3.8を実行してください。

55
Godsmith

ファイルハンドラがLinux/Unixシステム上のiノード(ファイル名とは独立して格納されている)を指しているのでNohup.outを起動した後はいつでも、デフォルトのNohup something&を他のファイル名に変更できます。したがって、次のこともできます。

$ Nohup something&
$ mv Nohup.out Nohup2.out
$ Nohup something2&

somethingNohup2.outに行を追加し、something2Nohup.outを追加します。

12
TrueY

上記の方法では、上記のNohupコマンドを実行するたびに、出力ファイルのデータが削除されます。

ユーザー定義ファイルに出力を追加するあなたはNohupコマンドで>>を使うことができます。

Nohup your_command >> filename.out &

このコマンドは、古いデータを削除せずにファイル内のすべての出力を追加します。

9
Irshad Khan