當前位置:首頁 » 操作系統 » linux信號kill

linux信號kill

發布時間: 2022-12-30 16:57:49

linux裡面kill -9的含義是什麼

一般來說Linux里邊的kill是殺死進程的意思。而加了一個-9。是表示無條件的殺死進程。所以這個命令的意思就是,不管這個進程正在執行還是已經結束,都要殺死掉它。

② Linux終止前台進程的命令

1、首先,連接相應linux主機,進入到linux命令行狀態下,等待輸入shell指令。

③ Linux幾種中斷信號的區別:HUP,INT,KILL,TERM,TSTP

Linux的HUP,INT,KILL,TERM,TSTP中斷信號區別為:鍵入不同、對應操作不同、啟用不同。

一、鍵入不同

1、HUP中斷信號:HUP中斷信號是當用戶鍵入<Ctrl+X>時由終端驅動程序發送的信號。

2、INT中斷信號:INT中斷信號是當用戶鍵入<Ctrl+I>時由終端驅動程序發送的信號。

3、KILL中斷信號:KILL中斷信號是當用戶鍵入<Ctrl+Z>時由終端驅動程序發送的信號。

4、TERM中斷信號:TERM中斷信號是當用戶鍵入<Ctrl+>時由終端驅動程序發送的信號。

5、TSTP中斷信號:TSTP中斷信號是當用戶鍵入<Ctrl+T>時由終端驅動程序發送的信號。二、對應操作不同

1、HUP中斷信號:HUP中斷信號的對應操作為讓進程掛起,睡眠。

2、INT中斷信號:INT中斷信號的對應操作為正常關閉所有進程。

3、KILL中斷信號:KILL中斷信號的對應操作為強制關閉所有進程。

4、TERM中斷信號:TERM中斷信號的對應操作為正常的退出進程。

5、TSTP中斷信號:TSTP中斷信號的對應操作為暫時停用進程。

三、啟用不同

1、HUP中斷信號:HUP中斷信號發送後,可以重新被用戶再次輸入恢復啟用進程。

2、INT中斷信號:INT中斷信號發送後,不可以重新被用戶再次輸入恢復啟用進程。

3、KILL中斷信號:KILL中斷信號發送後,不可以重新被用戶再次輸入恢復啟用進程。

4、TERM中斷信號:TERM中斷信號發送後,可以重新被用戶再次輸入啟用進程。

5、TSTP中斷信號:TSTP中斷信號發送後,可以重新被用戶再次輸入繼續使用進程。

④ linux kill命令

linux kill命令使用場景:當需要中斷一個前台進程的時候,通常是使用< Ctrl+c >組合鍵;但是對於一個後台進程恐怕就不是一個組合鍵所能解決的了,這時就必須求助於kill命令。

kill命令是通過向進程發送指定的信號來結束進程的。如果沒有指定發送信號,那麼默認值為TERM信號。TERM信號將終止所有不能捕獲該信號的進程。至於那些可以捕獲該信號的進程可能就需要使用kill(9)信號了,該信號是不能被捕捉的。

kill命令的語法:

  1. kill [-s 信號 | -p ] [ -a ] 進程號

  2. kill -l [信號]

    說明:-s 指定需要送出的信號。既可以是信號名也可以對應數字。
    -p 指定kill命令只是顯示進程的pid,並不真正送出結束信號。
    -l 顯示信號名稱列表,這也可以在/usr/include/linux/signal.h文件中找到。

kill命令的使用:

[舉例] 在執行一條find指令時由於時間過長,決定終止該進程。
首先應該使用ps命令來查看該進程對應的PID,鍵入ps,顯示如下:
PID TTY TIME COMMAND
285 1 00:00:00 -bash
287 3 00:00:00 -bash
289 5 00:00:00 /sbin/mingetty tty5
290 6 00:00:00 /sbin/mingetty tty6
312 3 00:00:00 telnet bbs3
341 4 00:00:00 /sbin/mingetty tty4
345 1 00:00:00 find / -name foxy.jpg
348 1 00:00:00 ps
可以看到該進程對應的PID是345,現在使用kill命令來終止該進程。鍵入:
# kill 345

再用ps命令查看,就可以看到,find進程已經被殺掉了。

⑤ linux 如何kill指定參數的命令

一、使用方式:

kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]

二、說明:

1、kill 送出一個特定的信號 (signal) 給行程 id 為 pid 的行程根據該信號而做特定的動作,若沒有指定,預設是送出終止 (TERM) 的信號;

2、-s (signal) : 其中常用的訊號有 HUP (1),KILL (9),TERM (15),分別代表著重跑,砍掉,結束; 詳細的信號可以用 kill -l (見下結果,可用數字帶入);

3、-p : 印出 pid,並不送出信號;

4、-l (signal) : 列出所有可用的信號名稱;

三、範例:

1、將 pid 為 323 的線程砍掉 (kill) :kill -9 323

2、將 pid 為 456 的線程重跑 (restart) :kill -HUP 456

⑥ linux kill %1 是什麼意思

Linux kill 命令用於刪除執行中的程序或工作。

kill 可將指定的信息送至程序。預設的信息為 SIGTERM(15),可將指定程序終止。若仍無法終止該程序,可使用 SIGKILL(9) 信息嘗試強制刪除程序。程序或工作的編號可利用 ps 指令或 jobs 指令查看。kill %1這條命令表示殺死一個後台程序,這個後台程序的「工作號碼(jobnumber)」是1號。命令查詢看下圖:

⑦ Linux kill 命令怎麼用

Linux kill 命令用於終止進程,其用法步驟如下:

需要准備的材料分別是:電腦、linux連接工具。

1、首先連接上linux主機,進入命令行狀態。

⑧ 2020-06-17Linux命令:kill

kill 命令通常用於終止執行中的程序。 kill可將指定的信息送至程序。默認送的信息為SIGTERM (信息編號為15),代表關閉進程

kill -9 pid kill -15 pid (效果等同於 kill pid )

其中 9 和 15 指的是信息編號

什麼是信息編號

使用kill -l 命令可以查看信息及編號

信息編號代指不同的信息,不同的信息有不同的含義

可以看到 9代表 SIGKILL,15 代表 SIGTERM 所以 ==kill -9 pid 代表 發送SIGKILL信息給這個pid的程序 kill -15 pid 代表 發送SIGTERM信息給這個pid的程序==

那麼 SIGTERM(15)和 SIGKILL(9)有什麼區別

SIGTERM :當進程接收到SIGTERM後,大多會先釋放自己的資源,再停止進程,屬於正常關閉進程,但是如果進程正在工作,處理io等,不會立馬關閉,或者 進程卡死的情況,都會導致SIGTERM不起作用。

SIGKILL : SIGKILL信號要求進程 立即關閉,強制關閉進程。

工作中關閉進程時,==先kill pid(默認使用編號15),如果不起作用 再使用 kill -9 pid。==

查看nginx的pid: ps -ef | grep nginx

可以看到nginx的主進程編號 是 7901

正常關閉 nginx的主進程

kill -15 7901 或者 kill 7901 再次查看nginx的進程 發現已經關閉

啟動nginx,查看進程號,再強制關閉 nginx

nginx 

ps -ef | grep nginx    

kill -9 9827    

ps -ef | grep nginx 

可以看到 kill -9 只是強制關閉了 nginx的主進程,由於不是正常關閉,worker進程並沒有被關閉,這就是強制關閉的弊端,再次關閉worker進程 kill -9 9828

1、kill 命令默認使用的信息編號及信息是什麼?

:15,代表正常關閉進程

2、kill -9 pid 中 信息編號9代表什麼信息?

:強制關閉進程

3、如何查看kill的信息編號?

:kill -l

4、寫出正常關閉 進程編號 為 233 的命令

:kill -15 pid  or  kill pid

5、寫出強制關閉 進程編號 為 233 的命令

:kill -9 pid

⑨ Linux裡面殺掉進程命令是什麼

方法一: Terminal終端輸入: gnome-system-monitor,就可以打開system monitor

如圖:

然後找到相應進程,右擊選擇kill process就可以了

方法二: 通過kill 進程id的方式可以實現,

首先需要知道進程id, 例如,想要殺死firefox的進程,通過 ps -ef|grep firefox,可以查到firefox的進程id:

然後通過 kill 3781 就可以關閉進程了.

補充: 1. kill -9 來強制終止退出, 例如: kill -9 3781

2.特殊用法:

kill -STOP [pid]
發送SIGSTOP (17,19,23)停止一個進程,而並不消滅這個進程。
kill -CONT [pid]
發送SIGCONT (19,18,25)重新開始一個停止的進程。
kill -KILL [pid]
發送SIGKILL (9)強迫進程立即停止,並且不實施清理操作。
kill -9 -1
終止你擁有的全部進程。

方法三: killall 通過程序的名字,來殺死進程

例如: killall firefox
注意: 該命令可以使用 -9 參數來強制殺死進程, killall -9 firefox

方法四: pkill 通過程序的名字, 直接殺死所有進程
例如: pkill firefox

方法五: 通過xkill 可以殺死圖形程序應用, 例如firefox崩潰無響應,可以使用該命令.
例如: 用法xkill , 會出現一個白色的x, 然後用滑鼠單擊想要殺死的應用,如圖

以下內容引用自: http://justcoding.iteye.com/blog/1931347

◆編者註:
KILLALL(Section: User (1)/Updated: 1999年9月7日)
———————————————–

NAME (名稱)
killall – 以名字方式來殺死進程

SYNOPSIS (總覽)
killall [-egiqvw] [-signal] name …
killall -l
killall -V

DESCRIPTION (描述)
killall 發送一條信號給所有運行任意指定命令的進程. 如果沒有指定信號名, 則發送SIGTERM.。
信號可以以名字 (如 -HUP ) 或者數字 (如 -1 ) 的方式指定. 信號 0 (檢查進程是否存在)只能以數字方式指定。
如果命令名包括斜杠 (/), 那麼執行該特定文件的進程將被殺掉, 這與進程名無關。
如果對於所列命令無進程可殺, 那麼 killall 會返回非零值. 如果對於每條命令至少殺死了一個進程, killall 返回 0。Killall 進程決不會殺死自己 (但是可以殺死其它 killall 進程)。

OPTIONS (選項)
-e
對 於很長的名字, 要求准確匹配. 如果一個命令名長於 15 個字元, 則可能不能用整個名字 (溢出了). 在這種情況下, killall 會殺死所有匹配名字前 15 個字元的所有進程. 有了 -e 選項,這樣的記錄將忽略. 如果同時指定了 -v 選項, killall 會針對每個忽略的記錄列印一條消息。
-g
殺死屬於該進程組的進程. kill 信號給每個組只發送一次, 即使同一進程組中包含多個進程。
-i
交互方式,在殺死進程之前徵求確認信息。
-l
列出所有已知的信號名。
-q
如果沒有進程殺死, 不會提出抱怨。
-v
報告信號是否成功發送。
-V
顯示版本信息。
-w
等待所有殺的進程死去. killall 會每秒檢查一次是否任何被殺的進程仍然存在, 僅當都死光後才返回. 注意: 如果信號被忽略或沒有起作用, 或者進程停留在僵屍狀態, killall 可能會永久等待。
FILES(相關文件)
/proc proc文件系統的存在位置。
KNOWN bugS (已知 BUGS)
以文件方式殺死只對那些在執行時一直打開的可執行文件起作用, 也即, 混雜的可執行文件不能夠通過這種方式殺死。
要警告的是輸入 killall name 可能不會在非 Linux 系統上產生預期的效果, 特別是特權用戶執行時要小心。
在兩次掃描的間隙, 如果進程消失了而被代之以一個有同樣 PID 的新進程, killall -w 偵測不到。

來源:http://www.ubuntuhome.com/ubuntu-kill-command.html

下面來了解相關命令:

一、查看進程的命令 有ps、pstree、pgrep等:

1、ps
顯示進程信息,參數可省略
-aux 以BSD風格顯示進程 常用
-efH 以System V風格顯示進程
-e , -A 顯示所有進程
a 顯示終端上所有用戶的進程
x 顯示無終端進程
u 顯示詳細信息
f 樹狀顯示
w 完整顯示信息
l 顯示長列表

在終端中執行ps aux,
各列輸出欄位的含義:

USER 進程所有者
PID 進程ID
PPID 父進程
%CPU CPU佔用率
%MEM 內存佔用率
NI 進程優先順序。數值越大,佔用CPU時間越少
VSZ 進程虛擬大小
RSS 頁面文件佔用
TTY 終端ID
STAT 進程狀態
+---D 不可中斷 Uninterruptible sleep (usually IO)
+---R 正在運行,或在隊列中的進程
+---S 處於休眠狀態
+---T 停止或被追蹤
+---Z 僵屍進程
+---W 進入內存交換(從內核2.6開始無效)
+---X 死掉的進程

+---< 高優先順序
+---N 低優先順序
+---L 有些頁被鎖進內存
+---s 包含子進程
+---+ 位於後台的進程組;
+---l 多線程,克隆線程 multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

PID:進程標識符,系統為每一個進程分配一個識別碼,稱為PID。

ps命令極為常用,其他命令還有:

2.pstree
樹狀顯示進程信息
-a 顯示完整命令及參數
-c 重復進程分別顯示
-c 顯示進程ID PID
-n 按 PID 排列進程

3.pgrep <進程名>
顯示進程的PID
-l 顯示進程名和進程PID
-o 進程起始ID
-n 進程終止ID

二、結束進程的命令 有kill、pkill、killall、xkill等:

kill [信號代碼] <進程PID>

根據PID向進程發送信號,常用來結束進程,默認信號為 -9
信號代碼,可取值如下:
-l [信號數字] 顯示、翻譯信號代碼
-9 , -KILL 發送 kill 信號退出
-6 , -ABRT 發送 abort 信號退出
-15 , -TERM 發送 Termination 信號
-1 , -HUP 掛起
-2 , -INT 從鍵盤中斷,相當於 Ctrl+c
-3 , -QUIT 從鍵盤退出,相當於 Ctrl+d
-4 , -ILL 非法指令
-11 , -SEGV 內存錯誤
-13 , -PIPE 破壞管道
-14 , -ALRM
-STOP 停止進程,但不結束
-CONT 繼續運行已停止的進程
-9 -1 結束當前用戶的所有進程

pkill <進程名>
結束進程族。如果結束單個進程,請用 kill

killall <進程名>
killall和pkill 應用方法差不多,也是直接殺死運行中的程序;如果您想殺掉單個進程,請用kill 來殺掉。

xkill
在圖形界面中點殺進程。
當xkill運行時滑鼠指針變為骷髏圖案,哪個圖形程序崩潰一點就OK了。如果您想終止xkill ,就按右鍵取消。
比如當firefox 出現崩潰不能退出時,點滑鼠就能殺死firefox 。
xkill 調用方法:
[root@localhost ~]# xkill

來源: http://www.cnblogs.com/1024-wusuopuBUPT/archive/2012/02/16/2354132.html

linux中pkill的簡單用法

pkill 和killall 應用方法差不多,也是直接殺死運行中的程序;如果您想殺掉單個進程,請用kill 來殺掉。

必要參數
-f 顯示完整程序
-l 顯示源代碼
-n 顯示新程序
-o 顯示舊程序
-v 與條件不符合的程序
-x 與條件符合的程序

選擇參數
-p<進程號> 列出父進程為用戶指定進程的進程信息
-t<終端> 指定終端下的所有程序
-u<用戶> 指定用戶的程序

應用方法:

#pkill 正在運行的程序名

舉例:

Java代碼
[root@localhost beinan]# pgrep -l gaim
2979 gaim
[root@localhost beinan]# pkill gaim

也就是說:

kill 對應的是 PID

pkill 對應的是COMMAND

例如在Ubuntu中強制結束一個已成僵屍的名稱為:firefox,PID為:1603的進程,可以如下操作:

方法一:

(1)ctrl+alt+t,調出終端,輸入 top,然後就可以看到現在系統的進程,是按佔用資源從多到少排列的。

找到要關掉的進程,記下該進程第一列的數字編號(假設是xx),然後輸入q,退回終端。

(2)輸入:sudo kill xx(對應剛才的編號)。

方法二:

ctrl+alt+t,調出終端,輸入:sudo pkill firefox

範例1: 殺死指定進程

Java代碼
root@snail-hnlinux:~# ps -A //顯示所有進程
PID TTY TIME CMD
1 ? 00:00:03 init
2 ? 00:00:00 kthreadd
3 ? 00:00:00 migration/0
4 ? 00:00:00 ksoftirqd/0
5 ? 00:00:00 watchdog/0
……忽略部分
28382 ? 00:00:00 gvfsd-http
28391 ? 00:07:07 software-center
30467 ? 00:00:31 designer-qt4
30487 ? 00:00:06 gnome-terminal
30488 ? 00:00:00 gnome-pty-helpe
30489 pts/0 00:00:00 bash
30670 ? 00:00:00 debconf-communi
30749 pts/0 00:00:17 gedit
31155 ? 00:00:00 dhclient
31325 ? 00:00:01 sshd
31327 ? 00:00:00 sshd
31400 pts/1 00:00:00 bash
31485 pts/2 00:00:00 bash
3 ? 00:00:00 aptd
31658 pts/1 00:00:00 ps
root@snail-hnlinux:~# pidof sshd //查看與sshd相關進程
31327 31325 2095
root@snail-hnlinux:~# pkill -9 sshd //殺死指定進程

範例2:殺死同義終端下的進程

Java代碼
root@snail-hnlinux:~# pkill -t tty1 //殺死終端1下的所有進程

範例3: 殺死指定用戶進程

Java代碼
root@snail-hnlinux:~# pkill -u hnlinux

範例4:反向選擇

Java代碼
root@snail-hnlinux:~# pkill -vu hnlinux //殺死不屬於hnlinux用戶的所有進程

————————————————
版權聲明:本文為CSDN博主「MrCoderr」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/coderder/article/details/78899823

熱點內容
gifshow是什麼文件夾 發布:2025-05-10 12:40:42 瀏覽:889
keil編譯VS工程 發布:2025-05-10 12:39:41 瀏覽:40
android輸入子系統 發布:2025-05-10 12:34:19 瀏覽:989
美團抵用密碼在哪裡看 發布:2025-05-10 12:31:15 瀏覽:934
sql資料庫查詢語句大全 發布:2025-05-10 12:29:41 瀏覽:419
微信點餐小程序源碼 發布:2025-05-10 12:23:57 瀏覽:477
c語言讀寫結構體 發布:2025-05-10 12:19:16 瀏覽:490
這是什麼狗上傳圖片 發布:2025-05-10 12:02:59 瀏覽:122
教小朋友編程 發布:2025-05-10 12:01:29 瀏覽:635
qq號怎麼申請賬號和密碼忘了怎麼辦啊 發布:2025-05-10 12:00:42 瀏覽:200