nohup
(no hang-up)命令允許你在后臺運行程序,即使關閉終端或斷開連接,程序也會繼續運行
打開終端。
使用nohup
命令啟動第一個任務。例如,如果你想在后臺運行名為task1.sh
的腳本,可以使用以下命令:
nohup ./task1.sh &
這里的&
符號表示將任務放入后臺運行。
$!
獲取上一個后臺任務的進程ID(PID)。例如:echo $!
nohup
命令啟動第二個任務,并將其輸入重定向到/dev/null
,以避免等待用戶輸入。例如,如果你想在后臺運行名為task2.sh
的腳本,可以使用以下命令:nohup ./task2.sh < /dev/null > /dev/null 2>&1 &
這里的< /dev/null
表示不等待用戶輸入,> /dev/null
表示將標準輸出重定向到/dev/null
(丟棄輸出),2>&1
表示將標準錯誤重定向到標準輸出(也是丟棄輸出)。
$!
獲取第二個后臺任務的進程ID(PID)。例如:echo $!
重復步驟4和5,以啟動更多后臺任務。
若要查看所有后臺任務的進程ID,可以使用jobs -p
命令。
若要結束某個后臺任務,可以使用kill
命令,后跟任務的進程ID。例如:
kill 12345
這里的12345
是任務的進程ID。
通過以上步驟,你可以使用nohup
命令進行多任務處理。請注意,為了避免意外關閉程序,建議在執行這些操作之前保存所有工作。