之前的文章《一文講解MacOS常用終端命令(附代碼)》中,給大家了解了一文講解MacOS常用終端命令。下面本篇文章給大家了解Wind和Linux中查看端口占用情況和Kill,我們一起看看怎么做。
端口占用情況和Kill(Window & Linux)
windows 使用
window中的netstat
-
-a 顯示所有連接和偵聽(tīng)端口。
-
-n 以數(shù)字形式顯示地址和端口號(hào)。
-
-o 顯示擁有的與每個(gè)連接關(guān)聯(lián)的進(jìn)程ID。
查看所有端口占用情況
netstat??-ano
查看被占用端口3306對(duì)應(yīng)的PID
netstat?-ano?|?findstr?3306
查看指定端口3306的PID進(jìn)程
tasklist?|?findstr?3306
結(jié)束進(jìn)程
強(qiáng)制(/F參數(shù))殺死 pid 為 12345 的所有進(jìn)程包括子進(jìn)程(/T參數(shù)):?
taskkill?/T?/F?/PID?12345
Linux使用
使用netstat命令
-t (tcp)僅顯示tcp相關(guān)選項(xiàng)
-u (ucp)僅顯示ucp相關(guān)選項(xiàng)-n拒絕顯示別名,能顯示數(shù)字的全轉(zhuǎn)成數(shù)字
-l 僅列出有在Listen(監(jiān)聽(tīng))的服務(wù)狀態(tài)
-p 顯示建立相關(guān)鏈接的程序名
看當(dāng)前所有已經(jīng)使用的端口情況
netstat???-nultp
查看某個(gè)端口使用情況
netstat???-anp?|grep?3306
使用lsof命令
-
默認(rèn) : 沒(méi)有選項(xiàng),lsof列出活躍進(jìn)程的所有打開(kāi)文件
-
組合 : 可以將選項(xiàng)組合到一起,如-abc,但要當(dāng)心哪些選項(xiàng)需要參數(shù)
-
-a : 結(jié)果進(jìn)行“與”運(yùn)算(而不是“或”)
-
-l : 在輸出顯示用戶(hù)ID而不是用戶(hù)名
-
-h : 獲得幫助
-
-t : 僅獲取進(jìn)程ID
-
-U : 獲取UNIX套接口地址
-
-F : 格式化輸出結(jié)果,用于其它命令。可以通過(guò)多種方式格式化,如-F pcfn(用于進(jìn)程id、命令名、文件描述符、文件名,并以空終止)
lsof?-i:3306
常用
-
lsof abc.txt 顯示開(kāi)啟文件abc.txt的進(jìn)程
-
lsof -i :22 知道22端口現(xiàn)在運(yùn)行什么程序
-
lsof -c abc 顯示abc進(jìn)程現(xiàn)在打開(kāi)的文件
-
lsof -g gid 顯示歸屬gid的進(jìn)程情況
-
lsof +d /usr/local/ 顯示目錄下被進(jìn)程開(kāi)啟的文件
-
lsof +D /usr/local/ 同上,但是會(huì)搜索目錄下的目錄,時(shí)間較長(zhǎng)
-
lsof -d 4 顯示使用fd為4的進(jìn)程
-
lsof -i 用以顯示符合條件的進(jìn)程情況
-
lsof -p 12 看進(jìn)程號(hào)為12的進(jìn)程打開(kāi)了哪些文件
-
lsof +|-r [t] 控制lsof不斷重復(fù)執(zhí)行,缺省是15s刷新
-
lsof -r,lsof會(huì)永遠(yuǎn)不斷的執(zhí)行,直到收到中斷信號(hào)
-
lsof +r,lsof會(huì)一直執(zhí)行,直到?jīng)]有檔案被顯示
-
lsof -s 列出打開(kāi)文件的大小,如果沒(méi)有大小,則留下空白
-
lsof -u username 以UID,列出打開(kāi)的文件
使用ps命令
命令參數(shù):
-
a 顯示所有進(jìn)程
-
-a 顯示同一終端下的所有程序
-
-A 顯示所有進(jìn)程
-
c 顯示進(jìn)程的真實(shí)名稱(chēng)
-
-N 反向選擇
-
-e 等于“-A”
-
e 顯示環(huán)境變量
-
f 顯示程序間的關(guān)系
-
-H 顯示樹(shù)狀結(jié)構(gòu)
-
r 顯示當(dāng)前終端的進(jìn)程
-
T 顯示當(dāng)前終端的所有程序
-
u 指定用戶(hù)的所有進(jìn)程
-
-au 顯示較詳細(xì)的資訊
-
-aux 顯示所有包含其他使用者的行程
-
-C 列出指定命令的狀況
-
–lines 每頁(yè)顯示的行數(shù)
-
–width 每頁(yè)顯示的字符數(shù)
-
–help 顯示幫助信息
-
–version 顯示版本顯示
查找特定進(jìn)程
ps?-ef|grep?ssh
輸出:
chuchur@linux:~/share$?ps?-ef|grep?bash chuchur????????9448??79650??0?06:05?pts/4????00:00:00?grep?--color=auto?bash chuchur???????79650??79575??0?03:49?pts/4????00:00:00?bash
通過(guò)服務(wù)名字查找PID
查找 nginx 和 python 占用情況
ps?aux?|?egrep?'(nginx|python)'
輸出:
root?????????951??0.0??0.3?425268?27680??????????Ssl???2020???9:48?/usr/libexec/platform-python?-Es?/usr/sbin/tuned?-l?-P root??????212828??0.0??0.1?135300?13924??????????Ss????2020???0:00?nginx:?master?process?/usr/sbin/nginx root?????2488443??0.0??0.1?164676?14892??????????S????Mar06???0:00?nginx:?worker?process
結(jié)束進(jìn)程
kill命令參數(shù)
-
-1 (HUP):重新加載進(jìn)程。
-
-9 (KILL):殺死一個(gè)進(jìn)程。
-
-15 (TERM):正常停止一個(gè)進(jìn)程。
-
-KILL 強(qiáng)制殺死進(jìn)程
kill?-9?65300?#徹底干掉pid為65530的進(jìn)程 kill?-9?$(ps?-ef?|?grep?guest)?#干掉guest?用戶(hù)進(jìn)程 #or kill?-u?guest
推薦學(xué)習(xí):windows教程