溫馨提示×

nohup命令如何在Linux中實現任務的自動重啟

小樊
38
2025-10-17 23:39:24
欄目: 智能運維

nohup(no hang-up)命令在 Linux 中用于在后臺運行程序,即使關閉終端或斷開連接,程序也會繼續運行

  1. 使用 nohup 命令啟動程序:

    nohup your_command &
    

    這將在后臺運行 your_command,并將輸出重定向到名為 nohup.out 的文件。

  2. 創建一個 shell 腳本,例如 run_my_command.sh,并在其中添加以下內容:

    #!/bin/bash
    while true; do
        nohup your_command > /dev/null 2>&1 &
        wait $!
        echo "Restarting your_command in 5 seconds..."
        sleep 5
    done
    

    這個腳本將無限循環地運行 your_command,并在每次執行完成后等待 5 秒鐘。> /dev/null 2>&1 將輸出重定向到 /dev/null,這樣你就不會看到任何輸出。

  3. 為腳本添加可執行權限:

    chmod +x run_my_command.sh
    
  4. 使用 nohup 命令運行腳本:

    nohup ./run_my_command.sh &
    

    這將在后臺運行 run_my_command.sh,即使關閉終端或斷開連接,程序也會繼續運行并自動重啟 your_command。

請注意,這種方法僅適用于簡單的用例。對于更復雜的任務管理和監控,你可能需要考慮使用進程管理器(如 systemd、supervisordpm2)。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女