nohup
(no hang-up)是一個在Linux和Unix系統中用于在后臺運行命令的實用程序,即使關閉終端或斷開連接,它也會繼續運行
基本用法:
nohup command &
這將在后臺運行command
,并將輸出重定向到名為nohup.out
的文件。&
符號表示將命令放入后臺運行。
指定輸出文件:
nohup command > output.log 2>&1 &
這將把標準輸出和標準錯誤都重定向到output.log
文件。
在指定目錄下運行:
nohup command > /path/to/output.log 2>&1 &
這將在指定的目錄下創建output.log
文件,并將輸出重定向到該文件。
使用disown
命令:
如果你已經啟動了一個命令,但忘記使用nohup
,你可以使用disown
命令將其從當前shell會話中分離,使其在關閉終端后繼續運行。
disown %job_number
其中job_number
是你在啟動命令時分配的作業編號。
使用screen
或tmux
:
screen
和tmux
是終端復用器,可以讓你在一個終端窗口中運行多個會話。這些工具在你需要斷開連接時非常有用,因為你可以重新連接到一個已存在的會話,而不是重新啟動命令。
使用systemd
服務:
對于需要在系統啟動時自動運行的命令,可以創建一個systemd
服務。這樣,即使系統重啟,命令也會自動運行。
使用cron
任務:
如果你需要在特定時間或間隔運行命令,可以使用cron
任務。編輯crontab
文件,添加一行,指定運行命令的時間和命令本身。
這些技巧可以幫助你在Debian系統中更有效地使用nohup
。在實際應用中,可以根據需要選擇合適的方法。