nohup
(no hang-up)命令在 CentOS 系統中用于在后臺運行程序,使其不受終端關閉或網絡斷開的影響。以下是一些使用 nohup
命令的技巧:
基本用法:
nohup command &
這將在后臺運行 command
,并將輸出重定向到當前目錄下的 nohup.out
文件。
指定輸出文件: 如果你想將輸出重定向到其他文件,可以使用以下命令:
nohup command > output.log 2>&1 &
這將把標準輸出和標準錯誤都重定向到 output.log
文件。
后臺運行多個命令:
你可以使用分號(;
)或雙與符號(&&
)來連接多個命令:
nohup command1 ; command2 &
或者
nohup command1 && command2 &
這將在后臺依次執行 command1
和 command2
。
查看后臺進程:
使用 ps
命令可以查看后臺運行的進程:
ps aux | grep nohup
這將顯示所有包含 “nohup” 的進程。
終止后臺進程:
如果你想終止一個后臺進程,可以使用 kill
命令。首先,找到進程的 PID(進程ID),然后使用以下命令終止它:
kill PID
如果進程沒有響應,可以使用 -9
選項強制終止:
kill -9 PID
使用 nohup
運行腳本:
你也可以使用 nohup
來運行一個腳本文件:
nohup ./script.sh &
這將在后臺運行 script.sh
腳本,并將輸出重定向到 nohup.out
文件。
忽略掛起信號:
nohup
命令默認會忽略掛起(SIGHUP)信號,這樣即使你關閉終端,進程也會繼續運行。如果你想顯式地忽略掛起信號,可以在命令前加上 disown
:
disown -h %1
這將使進程忽略掛起信號。
總之,nohup
命令是一個非常有用的工具,可以幫助你在 CentOS 系統中在后臺運行程序,而不用擔心終端關閉或網絡斷開的影響。