nohup
(no hang-up的縮寫)是一個在Linux和Unix系統中常用的命令,用于在后臺運行程序,使其在用戶退出登錄或關閉終端后仍然繼續運行。在CentOS中,nohup
命令的工作原理如下:
當你使用nohup
命令啟動一個程序時,該程序會與當前用戶的終端會話分離。這意味著即使你關閉終端或斷開與服務器的連接,程序也會繼續運行。
nohup
命令會將程序的輸出重定向到一個名為nohup.out
的文件中。如果該文件不存在,nohup
會自動創建它。你可以使用>
或>>
操作符來指定輸出文件的名稱和覆蓋方式。
如果你希望程序在后臺運行并且不產生任何輸出,可以將輸出重定向到/dev/null
設備文件,如下所示:
nohup your_command > /dev/null 2>&1 &
nohup
命令通常與&
符號一起使用,將程序放入后臺運行。這樣,你可以在不阻塞當前終端的情況下繼續執行其他命令。
舉個例子,如果你想在CentOS中使用nohup
命令運行一個名為my_script.sh
的腳本,可以這樣做:
nohup ./my_script.sh > my_output.log 2>&1 &
這將在后臺運行my_script.sh
腳本,并將輸出保存到my_output.log
文件中。即使你關閉終端或斷開與服務器的連接,腳本也會繼續運行。