linux殺死程序的命令 linux殺死進程命令代碼

4-6 Linux 終止進程 --- kill (kill -15 實驗)

kill -15 PID —— 正常方式終止一個程序。中斷進程時應首先用 -15,以便于其能夠預先清理臨時文件和釋放資源。-9?作為最后手段,應對那些失控的進程。

創(chuàng)新互聯(lián)建站服務項目包括河北網站建設、河北網站制作、河北網頁制作以及河北網絡營銷策劃等。多年來,我們專注于互聯(lián)網行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網行業(yè)的解決方案,河北網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到河北省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!

1)、kill -15 終止后臺運行的進程。

紅色下劃線:sleep 10000 —— 后臺運行延時 10000 秒的命令,進程 ID 為1550。

黃色下劃線:ps -j —— 列出 1550 sleep 命令的進程。

(PID:進程 ID、PGID:線程組 ID、SID:會話 ID、TTY:進程運行的終端,標識那個終端控制。(pts遠程終端、tty系統(tǒng)終端)、TIME:進程運行的時間 和 CMD:命令的名稱和參數)。

jobs -l —— 列出后臺運行的命令,1550 sleep 命令正在后臺運行。

藍色下劃線:kill -15 1550—— 終止1550 進程。系統(tǒng)反饋?Terminated?終止 1550 進程。

綠色方框:ps -j 已查詢不到?1550 sleep 的進程。jobs -l 也沒有后臺運行的命令。

2)、kill -15 配合 fg 查看終止掛起的進程。

紅色下劃線:sleep 10000 延時 10000 秒后 ctrl + z 掛起。

黃色下劃線:ps -j 查看進程,有 1578 sleep 的進程。jobs -l 查看后臺,1578 sleep 的狀態(tài)是 stopped 暫停狀態(tài)。

藍色下劃線:kill -15 終止 1578 進程。此時系統(tǒng)沒有反饋信息。

綠色下劃線:ps -j 查看進程,1578 sleep 進程仍在。jobs -l 查看后臺,1578 sleep 的狀態(tài)是 stopped 暫停狀態(tài)。

紅色下劃線:fg 1 把后臺運行的 sleep 調至前臺繼續(xù)運行。此時,系統(tǒng)首先提示 sleep 已經調至前臺運行,然后又提示?Terminated 終止進程。

藍色下劃線:ps -j 查看進程已經沒有了 1578 sleep 進程。jobs -j 查看也后臺也沒有命令在執(zhí)行。

3)、kill -15 配合 bg 查看終止掛起的進程。

同樣的,首先sleep 10000 后 ctrl + z 掛起。通過 ps -j 查看后臺進程有 1590 sleep進程,josb -l 查看后臺也有狀態(tài)為 stopped? 的1590 sleep 命令。 然后,kill -15 1590 終止 1590 進程。再次通過 ps -j 查看1590 sleep進程仍在,josb -l 查看后臺還有狀態(tài)為 stopped? 的1590 sleep 命令。

紅色下劃線:bg 1 把掛起的 sleep 命令繼續(xù)運行。此時,系統(tǒng)反饋 sleep 命令在后臺運行。

黃色下劃線:ps -j 查看進程,系統(tǒng)反饋 sleep 進程已經? Terminated? 終止。jobs -l 也查詢不到sleep 在后臺運行。

從實驗上看:

1、后臺命令運行時(Running),執(zhí)行 kill -15 可以終止進程。

2、掛起命令,處于暫停狀態(tài)時(Stopped),執(zhí)行 kill -15 后通過 ps 還可以查詢到進程, jobs還可以查詢到后臺命令,狀態(tài)仍然是 Stopped 暫停狀態(tài)。用 fg 把暫停的后臺進程調至前臺運行時,系統(tǒng)反饋一行 sleep 命令調至前臺運行。跟著一條 Terminated 終止進程。再用 ps 查詢不到進程。用 jobs 已經查詢不到后臺命令。(這里和 kill -2 不同,kill -2 后用 fg 系統(tǒng)只反饋一行 sleep 命令調至前臺運行,沒有提示進程已中斷。)

3、掛起命令,處于暫停狀態(tài)時(Stopped),執(zhí)行 kill -15 后通過 ps 還可以查詢到進程, jobs還可以查詢到后臺命令,狀態(tài)仍然是?Stopped 暫停狀態(tài)。用 bg 把暫停的后臺命令恢復運行時,系統(tǒng)反饋 sleep 命令在后臺運行。再用 ps 查詢進程已經終止,用 jobs 已經查詢不到后臺命令。(這里和 kill -2一樣)

2020-06-17Linux命令:kill

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

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

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

什么是信息編號

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

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

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

那么 SIGTERM(15)和 SIGKILL(9)有什么區(qū)別

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的進程 發(fā)現已經關閉

啟動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

4-7 Linux 強殺進程 --- kill (kill -9 實驗)

kill -9 PID —— 強制殺死一個進程。

1、kill -9 殺死后臺運行的進程。

紅色下劃線:sleep 10000 —— 后臺運行延時 10000 秒的命令,進程 ID 為1317。

黃色下劃線:ps —— 列出 1317 sleep 命令的進程。

(PID:進程 ID、PGID:線程組 ID、SID:會話 ID、TTY:進程運行的終端,標識那個終端控制。(pts遠程終端、tty系統(tǒng)終端)、TIME:進程運行的時間 和 CMD:命令的名稱和參數)。

jobs -l —— 列出后臺運行的命令,1317 sleep 命令正在后臺運行。

藍色下劃線:kill -9 1317—— 殺死?1317 進程。

綠色方框:ps 查詢進程,1317 sleep進程已經被殺死(Killed)。jobs -l 已經沒有后臺運行的1317 sleep 命令。

2、kill -9 終止掛起的進程。

紅色下劃線:執(zhí)行 sleep 10000 后 ctrl + z 掛起。

黃色下劃線:ps -j 查看進程,有 1342 sleep 的進程。jobs -l 查看后臺,1342 sleep 的狀態(tài)是 stopped 暫停狀態(tài)。

藍色下劃線:kill -9 殺死 1342 進程。此時系統(tǒng)沒有反饋信息。

綠色下劃線:ps -j 查看進程,1342 sleep 已經被殺死(Killed)。jobs -l 查看后臺,已經沒有了? 1342?sleep。

從實驗上看:

1、后臺命令運行時(Running),執(zhí)行 kill -9 可以強殺進程。

2、掛起命令,處于暫停狀態(tài)時(Stopped),執(zhí)行 kill -9 后通過 ps 查詢進程, 可以看到進程已經被殺死。jobs 也查不到有后臺命令。(這里和 kill -2、kill -15 不一樣。kill -2、kill -15 在掛起命令,處于暫停狀態(tài)時(Stopped)時執(zhí)行,通過 ps 還可以查詢到進程,jobs 也可以查詢到后臺仍有處于暫停狀態(tài)的命令。)

Linux終止前臺進程的命令

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

2、其次,以終止進程號1984的nginx子進程為例,在linux命令行中輸入:kill -9 1984。

3、最后,按下回車鍵執(zhí)行shell指令,此時會看到進程號1984的nginx子進程被成功終止了。

linux里面怎么殺掉一個程序

首先使用ps -ef命令確定要殺死進程的PID,然后輸入以下命令:

# kill -pid

注釋:標準的kill命令通常都能達到目的。終止有問題的進程,并把進程的資源釋放給系統(tǒng)。然而,如果進程啟動了子進程,只殺死父進程,子進程仍在運行,因此仍消耗資源。為了防止這些所謂的“僵尸進程”,應確保在殺死父進程之前,先殺死其所有的子進程。

*確定要殺死進程的PID或PPID

# ps -ef | grep httpd

結束進程

# kill -l PID

-l選項告訴kill命令用好像啟動進程的用戶已注銷的方式結束進程。當使用該選項時,kill命令也試圖殺死所留下的子進程。但這個命令也不是總能成功--或許仍然需要先手工殺死子進程,然后再殺死父進程。

給父進程發(fā)送一個TERM信號,試圖殺死它和它的子進程。

# kill -TERM PPID

*killall命令

killall命令殺死同一進程組內的所有進程。其允許指定要終止的進程的名稱,而非PID。

# killall httpd

*停止和重啟進程

有時候只想簡單的停止和重啟進程。如下:

# kill -HUP PID

該命令讓Linux和緩的執(zhí)行進程關閉,然后立即重啟。在配置應用程序的時候,這個命令很方便,在對配置文件修改后需要重啟進程時就可以執(zhí)行此命令。

Linux kill 命令怎么用?

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

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

1、首先連接上linux主機,進入命令行狀態(tài)。

2、輸入:ps -ef,按回車,查詢進程列表。

3、選擇需要終止的進程,例如PID為9977的進程,則命令行輸入:kill 9977,按回車即可終止該進程。

網站題目:linux殺死程序的命令 linux殺死進程命令代碼
網站URL:http://muchs.cn/article28/hgigcp.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、全網營銷推廣、做網站、網站維護建站公司、商城網站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司