Terminal
如何不創建 nohup.out 文件,但保留終端輸出?
如果您將 nohup 應用程序重定向為:
nohup bash -c "printf \"command\n\"" &> /dev/null
該
nohup.out
文件沒有創建,但是我執行命令的終端也沒有得到任何輸出。如何保留命令的終端輸出但不創建nohup.out
文件?
試試這個,
要在控制台和 nohup.out 文件中獲取
STDOUT
andSTDERR
,請在執行命令之前執行以下操作nohup
。exec > >(awk '{ print $0; fflush();}' | tee -a nohup.out) exec 2> >(awk '{ print $0; fflush();}' | tee -a nohup.out >&2) nohup bash -c "printf \"command\n\"" &
編輯:
如果你不想
nohup.out
創建,然後試試這個exec > >(awk '{ print $0; fflush();}') exec 2> >(awk '{ print $0; fflush();}') nohup bash -c "printf \"command\n\"" &
這不會在控制台上創建
nohup.out
同時顯示STDOUT
和。STDERR
將上述行放入腳本中,然後在後台執行。