在 Ubuntu 中,nohup
命令本身不提供直接的超時時間設置功能。不過,你可以結合使用其他工具來實現這個需求。以下是幾種常見的方法:
timeout
命令timeout
命令可以用來限制一個命令的執行時間。你可以將 nohup
和 timeout
結合使用。
timeout 10 nohup your_command &
在這個例子中,your_command
將會在 10 秒后自動終止,即使它正在運行。
sleep
和 kill
命令你也可以使用 sleep
命令來等待一段時間,然后使用 kill
命令來終止進程。
nohup your_command &
pid=$!
sleep 10
kill $pid
在這個例子中,your_command
將會運行,10 秒后會被終止。
at
命令at
命令可以用來安排在指定時間執行任務。你可以使用 at
命令來安排一個任務,在指定時間后終止你的命令。
echo "kill $(pgrep your_command)" | at now + 10 minutes
nohup your_command &
在這個例子中,your_command
將會運行,10 分鐘后會被終止。
cron
命令如果你需要更復雜的調度,可以使用 cron
命令。你可以設置一個 cron
任務,在指定時間后終止你的命令。
(crontab -l 2>/dev/null; echo "*/10 * * * * kill $(pgrep your_command)") | crontab -
nohup your_command &
在這個例子中,your_command
將會每 10 分鐘被檢查一次,如果還在運行,則會被終止。
選擇適合你需求的方法來設置超時時間。