linux怎么用nohup守護(hù)進(jìn)程

小億
112
2023-12-22 09:50:59

要使用"nohup"命令來(lái)守護(hù)進(jìn)程,可以按照以下步驟進(jìn)行操作:

  1. 打開終端或者登錄到Linux服務(wù)器。

  2. 輸入以下命令格式:

    nohup command > output.log 2>&1 &
    

    其中,“command"為要運(yùn)行的命令,“output.log"為輸出日志的文件名?!?gt;&1"將標(biāo)準(zhǔn)錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出,”&"符號(hào)表示在后臺(tái)運(yùn)行該命令。

    例如,要運(yùn)行一個(gè)名為"example.sh"的shell腳本并將輸出重定向到"output.log"文件,命令如下:

    nohup ./example.sh > output.log 2>&1 &
    
  3. 按下回車鍵執(zhí)行命令。此時(shí),該命令將在后臺(tái)運(yùn)行,并且不會(huì)受到終端關(guān)閉的影響。

  4. 若要查看命令的輸出,可以使用以下命令:

    tail -f output.log
    

    這將實(shí)時(shí)顯示輸出日志。

注意事項(xiàng):

  • nohup命令執(zhí)行后,會(huì)在當(dāng)前目錄下生成一個(gè)名為"nohup.out"的文件,其中包含了命令的輸出??梢允褂?quot;output.log"來(lái)替代該默認(rèn)文件名。
  • 建議在執(zhí)行nohup命令前,先進(jìn)入要運(yùn)行命令的腳本所在的目錄,以避免可能的路徑問(wèn)題。
  • 如果要停止守護(hù)進(jìn)程,可以使用"ps"命令找到該進(jìn)程的PID,并使用"kill"命令將其殺死。例如:
    ps -ef | grep example.sh
    kill PID
    
    其中,"PID"為進(jìn)程的ID。

0