nohup(no hang-up)命令用于在Linux中運行不受掛起信號影響的長時任務
nohup command-to-run &
其中,command-to-run 是您要執行的命令,& 符號將命令放入后臺運行。
例如,如果您想要在后臺運行一個名為 my_script.sh 的腳本,可以使用以下命令:
nohup ./my_script.sh &
nohup 會將命令的輸出發送到名為 nohup.out 的文件。如果您想將輸出重定向到其他文件,可以使用以下語法:nohup command-to-run > output-file 2>&1 &
這里,> 用于將標準輸出重定向到指定文件,2>&1 表示將標準錯誤輸出重定向到標準輸出,& 將命令放入后臺運行。
例如,如果您想將輸出重定向到名為 output.log 的文件,可以使用以下命令:
nohup ./my_script.sh > output.log 2>&1 &
jobs 命令可以查看當前終端會話中的后臺任務。例如:jobs
ps 命令結合 grep 命令查找特定任務的PID。例如,如果您知道任務名稱(如 my_script.sh),可以使用以下命令查找其PID:ps aux | grep my_script.sh
找到PID后,使用 kill 命令終止任務:
kill PID
將 PID 替換為實際的進程ID。
總之,nohup 命令是管理Linux中長時間運行任務的有效工具。通過結合輸出重定向和其他命令,您可以更好地控制任務的執行和輸出。