disown — 從 Shell 工作表移除工作
讓已啟動的工作脫離 Shell 工作表,登出後繼續執行。
語法
disown [選項] [%工作號碼 | PID]
常用選項
| 選項 | 說明 | 範例 |
|---|---|---|
-h |
標記為不接收 SIGHUP(但保留在工作清單中) | disown -h %1 |
-a |
移除所有工作 | disown -a |
-r |
只移除正在執行的工作 | disown -r |
使用範例
範例 1:忘記用 nohup 啟動後的補救
已經啟動了一個長時間工作,但忘記加 nohup,現在要讓它在登出後繼續執行。
$ # 1. 先把前景工作放到背景
bg %1
# 2. 從 Shell 工作清單移除
disown %1
# 3. 現在可以安全登出
範例 2:移除所有背景工作
一次將所有背景工作從 Shell 工作清單中移除。
$ disown -a