新聞中心
Linux終止前臺(tái)進(jìn)程的命令
1、首先,連接相應(yīng)linux主機(jī),進(jìn)入到linux命令行狀態(tài)下,等待輸入shell指令。
創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供離石網(wǎng)站建設(shè)、離石做網(wǎng)站、離石網(wǎng)站設(shè)計(jì)、離石網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、離石企業(yè)網(wǎng)站模板建站服務(wù),十余年離石做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
2、其次,以終止進(jìn)程號(hào)1984的nginx子進(jìn)程為例,在linux命令行中輸入:kill -9 1984。
3、最后,按下回車鍵執(zhí)行shell指令,此時(shí)會(huì)看到進(jìn)程號(hào)1984的nginx子進(jìn)程被成功終止了。
linux 常見(jiàn)命令 lsof,ps,ln...
[TOC]
可以列出被進(jìn)程所打開(kāi)的文件的信息。被打開(kāi)的文件可以是
1.普通的文件
2.目錄抽象為特殊文件
3.網(wǎng)絡(luò)文件系統(tǒng)的文件,抽象為文件
4.字符設(shè)備文件在linux抽象為文件
5.(函數(shù))共享庫(kù)
6.管道,命名管道
7.符號(hào)鏈接
8.底層的socket字流,網(wǎng)絡(luò)socket,unix域名socket
9.在linux里面,很多東西都抽象為文件,提供了統(tǒng)一的訪問(wèn)接口
屬性第一個(gè)字符:
rwx=0x111,二進(jìn)制表示
列出所有進(jìn)程
-ef f:father
ps –el ,
e:every :顯示所有進(jìn)程信息,等價(jià)于A
a:all :顯示除了當(dāng)前終端進(jìn)程外的其他進(jìn)程
l: long 長(zhǎng)格式顯示進(jìn)程信息。
linux 線程狀態(tài):
ps工具標(biāo)識(shí)進(jìn)程的5種狀態(tài)碼:
chmod 對(duì)象 +/- 模式
對(duì)象:u(user),g(group),o(other),a(all)
模式:r,w,x
由于inode號(hào)碼與文件名分離,這種機(jī)制導(dǎo)致了一些Unix/Linux系統(tǒng)特有的現(xiàn)象。
軟件不關(guān)閉情況下更新:寫(xiě)入同名不同inode的文件,下次啟動(dòng)由于老的inode已經(jīng)丟失,操作系統(tǒng)回收原來(lái)的Block。
綜上,總結(jié)一下軟鏈接和硬鏈接的區(qū)別:
參考: 阮一峰的網(wǎng)絡(luò)日志:理解inode
Ctrl+z 暫停進(jìn)程執(zhí)行
uname -m 顯示機(jī)器的處理器架構(gòu)(2)
uname -r 顯示正在使用的內(nèi)核版本
jobs: 查看后臺(tái)任務(wù)
fg +jobNum: 將后臺(tái)任務(wù)調(diào)到前臺(tái)
未完,不定期更新中...
4-5 Linux 中斷進(jìn)程 --- kill (kill -2 實(shí)驗(yàn))
1、信號(hào):傳遞給 Liunx 的事件發(fā)生通知機(jī)制。
2、kill -l:顯示所有信號(hào)。一共有62個(gè)信號(hào)(沒(méi)有32、33)。
3、常用的信號(hào)有:
kill -2 PID —— 正常中斷進(jìn)程(Ctrl + C 一樣)。程序在結(jié)束之前,能夠保存相關(guān)數(shù)據(jù),然后再退出。
kill -9 PID —— 強(qiáng)制殺死一個(gè)進(jìn)程。
kill -15 PID —— 正常方式終止一個(gè)程序。中斷進(jìn)程時(shí)應(yīng)首先用 -15,以便于其能夠預(yù)先清理臨時(shí)文件和釋放資源。-9?作為最后手段,應(yīng)對(duì)那些失控的進(jìn)程。
--------------------------------------------------------------------------------
1)、kill -2 中斷后臺(tái)運(yùn)行的進(jìn)程。
紅色下劃線:sleep 10000 —— 后臺(tái)運(yùn)行延時(shí) 10000 秒的命令,進(jìn)程 ID 為1516。
ps -j —— 以作業(yè)格式列出進(jìn)程信息,可以看到 1516 sleep 命令的進(jìn)程。
(PID:進(jìn)程 ID、PGID:線程組 ID、SID:會(huì)話 ID、TTY:進(jìn)程運(yùn)行的終端,標(biāo)識(shí)那個(gè)終端控制。(pts遠(yuǎn)程終端、tty系統(tǒng)終端)、TIME:進(jìn)程運(yùn)行的時(shí)間 和 CMD:命令的名稱和參數(shù))。
jobs -l —— 列出后臺(tái)運(yùn)行的命令,可以看到 1516 sleep 命令正在后臺(tái)運(yùn)行。
黃色下劃線:kill -2 1516 —— 中斷1516 進(jìn)程。執(zhí)行成功后,按 Enter 回車系統(tǒng)會(huì)給出提示Interrupt 提示(中斷進(jìn)程)。
藍(lán)色方框:ps -j 已查詢不到?1516 sleep 的進(jìn)程。jobs -l 也沒(méi)有后臺(tái)運(yùn)行的命令。
2)、kill -2 配合 fg 查看中斷掛起的進(jìn)程。
紅色下劃線:前臺(tái)執(zhí)行 sleep 10000 (延時(shí)10000秒)后 ctrl + z 掛起。
黃色下劃線:ps -j 查看進(jìn)程,可以看到 1344 sleep 進(jìn)程。jobs -l 查看后臺(tái)進(jìn)程 1344 的狀態(tài)是stopped 暫停狀態(tài)。
藍(lán)色下劃線:kill -2 1344 中斷 1344 進(jìn)程。
綠色下劃線:ps -j 查看進(jìn)程,仍有 1344 sleep 進(jìn)程。jobs -l 查看后臺(tái)進(jìn)程 1344 的狀態(tài)是stopped 暫停狀態(tài)。
暫時(shí)這樣看,好像 kill -2 并沒(méi)有起到中斷進(jìn)程的作用。
然而,用 fg 把后臺(tái)的命令調(diào)至前臺(tái)運(yùn)行時(shí)可以發(fā)現(xiàn) 1344 sleep 已經(jīng)被中斷。
紅色下劃線:fg 把已經(jīng)執(zhí)行了 kill -2, 狀態(tài)為 stopped 的1344 sleep命令調(diào)至前臺(tái)執(zhí)行。系統(tǒng)也反饋已經(jīng)調(diào)至前臺(tái)執(zhí)行。(此時(shí),實(shí)際上已經(jīng)執(zhí)行了 kill -2 中斷了進(jìn)程)
黃色方框:ps -j 已經(jīng)沒(méi)有了 1344 sleep 的進(jìn)程。
藍(lán)色方框:jobs -l 后臺(tái)也沒(méi)有指令。
3)、kill -2 配合 bg 查看中斷掛起的進(jìn)程。
通過(guò)上面的思路,kill -2 配合 bg 實(shí)驗(yàn)看看效果。同樣的首先掛起一個(gè)命令,狀態(tài)為 stopped 暫停。然后用 bg 命令恢復(fù)執(zhí)行。
前面的步驟都是一樣,掛起一個(gè)命令。通過(guò) ps 和 jobs 查看進(jìn)程和后臺(tái)確認(rèn)有 1379 的進(jìn)程,狀態(tài)為 stopped 暫停。然后執(zhí)行 kill-2 中斷進(jìn)程,再次通過(guò)ps 和 jobs 查看進(jìn)程和后臺(tái)命令。確認(rèn)狀態(tài)為 stopped? 1379 的進(jìn)程仍然存在。
此時(shí),用 bg 恢復(fù)運(yùn)行掛起的命令,系統(tǒng)提示 sleep 命令已恢復(fù)在后臺(tái)運(yùn)行。然而通過(guò) ps -j 查看進(jìn)程會(huì)發(fā)現(xiàn) sleep 已經(jīng)被中斷。jobs -l 查看后臺(tái)也沒(méi)有了運(yùn)行的 sleep 命令了。
從實(shí)驗(yàn)上看:
1、后臺(tái)命令運(yùn)行時(shí)(Running),執(zhí)行 kill -2 可以中斷進(jìn)程。
2、掛起命令,處于暫停狀態(tài)時(shí)(Stopped),執(zhí)行 kill -2 后通過(guò) ps 還可以查詢到進(jìn)程, jobs還可以查詢到后臺(tái)命令,狀態(tài)仍然是 Stopped 暫停狀態(tài)。實(shí)際上,用 fg 把暫停的后臺(tái)進(jìn)程調(diào)至前臺(tái)運(yùn)行時(shí),系統(tǒng)反饋 sleep 命令調(diào)至前臺(tái)運(yùn)行。而再用 ps 查詢不到進(jìn)程,已經(jīng)中斷了進(jìn)程。用 jobs 已經(jīng)查詢不到后臺(tái)命令。
3、掛起命令,處于暫停狀態(tài)時(shí)(Stopped),執(zhí)行 kill -2 后通過(guò) ps 還可以查詢到進(jìn)程, jobs還可以查詢到后臺(tái)命令,狀態(tài)仍然是?Stopped 暫停狀態(tài)。用 bg 把暫停的后臺(tái)命令恢復(fù)運(yùn)行時(shí),系統(tǒng)反饋 sleep 命令在后臺(tái)運(yùn)行。再用 ps 查詢進(jìn)程已經(jīng)中斷,用 jobs 已經(jīng)查詢不到后臺(tái)命令。
標(biāo)題名稱:linux常用命令暫停 linux命令行暫停
URL地址:http://ef60e0e.cn/article/hjpchj.html