nohup
(no hang-up)命令在 CentOS 中用于在后臺運行程序,即使關閉終端或斷開連接,程序也會繼續運行。以下是 nohup
命令的基本使用方法:
nohup command [arguments] &
command
:要運行的命令。[arguments]
:傳遞給命令的參數。&
:將命令放入后臺運行。運行一個簡單的命令
nohup ls -l &
這個命令會在后臺運行 ls -l
,并且即使關閉終端,該命令也會繼續運行。
重定向輸出
默認情況下,nohup
會將輸出重定向到當前目錄下的 nohup.out
文件。你可以顯式地指定輸出文件:
nohup ls -l > output.log 2>&1 &
這個命令會將標準輸出和標準錯誤都重定向到 output.log
文件。
運行一個長時間運行的腳本
假設你有一個名為 long_running_script.sh
的腳本:
nohup ./long_running_script.sh &
這個命令會在后臺運行腳本,并且即使關閉終端,腳本也會繼續運行。
查看后臺進程
你可以使用 ps
命令來查看后臺運行的進程:
ps aux | grep nohup
或者使用 jobs
命令查看當前終端的后臺作業:
jobs
終止后臺進程
如果你需要終止一個后臺進程,可以使用 kill
命令。首先找到進程的 PID(進程ID),然后使用 kill
命令終止它:
ps aux | grep nohup
kill -9 <PID>
其中 <PID>
是你要終止的進程的ID。
nohup
命令時,確保你有足夠的權限來運行指定的命令。nohup
,確保腳本具有可執行權限:chmod +x long_running_script.sh
systemd
或 supervisord
)來管理后臺進程。通過這些方法,你可以在 CentOS 中有效地使用 nohup
命令來運行后臺進程。