Ketika saya menjalankan nohup some_command &
, output menuju ke nohup.out
; man nohup
mengatakan untuk melihat info nohup
yang pada gilirannya mengatakan:
Jika output standar adalah terminal, output standar perintah ditambahkan ke file 'nohup.out'; jika itu tidak dapat ditulis, ditambahkan ke file '$ HOME / nohup.out'; dan jika itu tidak dapat ditulis, perintah tidak dijalankan.
Tetapi jika saya sudah memiliki satu perintah menggunakan nohup
dengan output pergi ke /nohup.out
dan saya ingin menjalankan yang lain, nohup
perintah, dapatkah saya mengarahkan output ke nohup2.out
?
2>&1&
?2>&1
mengalihkanstderr
ke file output yang sama sepertistdout
dalam kasus ininohup2.out
&> nohup2.out
.Untuk beberapa alasan, jawaban di atas tidak berhasil untuk saya; Saya tidak kembali ke command prompt setelah menjalankannya seperti yang saya harapkan dengan trailing &. Sebaliknya, saya hanya mencoba
dan itu berfungsi seperti yang saya inginkan. Meninggalkan ini di sini kalau-kalau ada orang lain dalam situasi yang sama. Menjalankan Bash 4.3.8 untuk referensi.
sumber
Ketika penangan file menunjuk ke i-node (yang disimpan secara independen dari nama file) pada sistem Linux / Unix Anda dapat mengganti nama default
nohup.out
ke nama file lain kapan saja setelah memulainohup something&
. Jadi, orang juga dapat melakukan hal berikut:Sekarang
something
tambahkan baris kenohup2.out
dansomething2
kenohup.out
.sumber
Metode di atas akan menghapus data file output Anda setiap kali Anda menjalankan perintah nohup di atas.
Untuk menambahkan output dalam file yang ditentukan pengguna Anda dapat menggunakan
>>
perintah nohupPerintah ini akan menambahkan semua output dalam file Anda tanpa menghapus data lama.
sumber