disown
從當前的shell中移除作業。
概要
1disown [-h] [-ar] [jobspec ... | pid ...]
主要用途
-
從當前shell的作業列表中移除全部作業。
-
從當前shell的作業列表中移除指定的一到多個作業。
-
從當前shell的作業列表中移除正在運行的作業。
-
標記作業,使得它們在當前shell退出後也不會結束。
選項
1-h 標記每個作業標識符,這些作業將不會在shell接收到sighup信號時接收到sighup信號。
2-a 移除所有的作業。
3-r 移除運行的作業。
參數
jobspec(可選):要移除的作業標識符,可以是一到多個。
pid(可選):要移除的作業對應的進程ID,可以是一到多個。
返回值
返回成功除非未開啓作業控制或執行出現錯誤。
例子
1# 演示。
2[user2@pc] ssh 192.168.1.4
3user2@192.168.1.4's password:
4# 此時按下ctrl+z使得交互停止。
5[1]+ Stopped ssh 192.168.1.4
6
7[user2@pc] ssh 192.168.1.7
8user2@192.168.1.7's password:
9# 此時按下ctrl+z使得交互停止。
10[1]+ Stopped ssh 192.168.1.7
11
12[user2@pc] sleep 120 &
13[3] 28986
14
15# 列出作業及pid信息。
16[user2@pc] jobs -l
17[1]- 28756 Stopped ssh 192.168.1.4
18[2]+ 28833 Stopped ssh 192.168.1.7
19[3] 28986 Running sleep 120 &
20
21# 刪除運行狀態的作業。
22[user2@pc] disown -r
23
24[user2@pc] jobs -l
25[1]- 28756 Stopped ssh 192.168.1.4
26[2]+ 28833 Stopped ssh 192.168.1.7
27
28# 注意disown只是移除作業,並沒有停止。
29[user2@pc] pgrep -a -u user2 -f 'sleep 120'
3028986 sleep 120
31
32# 刪除指定的作業。
33[user2@pc] disown %2
34bash: warning: deleting stopped job 2 with process group 28833
35
36[user2@pc] jobs -l
37[1]- 28756 Stopped ssh 192.168.1.4
38
39# 注意disown只是移除作業,並沒有停止。
40[user2@pc] pgrep -a -u user2 -f 'ssh 192.168.1.7'
4128833 ssh 192.168.1.7
42
43# 刪除全部作業。
44[user2@pc] disown -a
45bash: warning: deleting stopped job 1 with process group 28756
46
47[user2@pc] jobs -l
48
49# 注意disown只是移除作業,並沒有停止。
50[user2@pc] pgrep -a -u user2 -f 'ssh 192.168.1.4'
5128756 ssh 192.168.1.4
1# 演示-h選項的作用。
2[user2@pc] sleep 90 &
3[1] 109080
4
5[user2@pc] jobs -l
6[1]+ 109080 Running sleep 90 &
7
8[user2@pc] disown -h %1
9
10[user2@pc] exit
11
12# 此時前一個終端已經關閉,現在打開新終端查找該作業。
13[user2@pc] pgrep -a -u user2 -f 'sleep 90'
14109080 sleep 90
注意
bash
的作業控制命令包括bg fg kill wait disown suspend
。- 該命令需要
set
選項monitor
處於開啓狀態時才能執行;查看作業控制狀態:輸入set -o
查看monitor
行;執行set -o monitor
或set -m
開啓該選項。 - 該命令是bash內建命令,相關的幫助信息請查看
help
命令。
參考鏈接
來源:https://github.com/jaywcjlove/linux-command
最後修改於: Wednesday, January 31, 2024
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。