linu如何檢視埠被哪個程序占用

時間 2022-01-02 00:27:05

1樓:

使用netstat 和lsof命令,並用grep來過濾你需要檢視的埠。

例如檢視tcp有哪些埠開啟了:

netstat -a| grep tcp

然後檢視哪個程序占用了這些埠:

lsof -i

如果要檢視某個埠,比如80埠是哪個程序:

lsof -i | grep :80

2樓:

1)使用lsof命令

lsof是乙個非常強大的linux工具,她被用來查詢哪些程式使用了那些檔案。在linux系統下,基本上所有的東西都可以被當作檔案來用。socket當然也是一種檔案了。

所以lsof可以用來查詢誰用了某乙個埠。具體方法:

lsof -i :port_number |grep "(listen)"

-i是用來查詢和網路相關的檔案,":"號是必須的,它是標誌你查詢的是乙個埠。port_number就是你要查詢的埠號,譬如你要查詢是否 有程式占用了oracle的監聽埠1521,就可以使用lsof -i :

1521 |grep "(listen)"。如果有程式已經占用了,那麼下面列印的第二個字段就是該程式的程序id,第乙個欄位是程序的名字。

如果只有losf -i :port_number可能會查到很多應用程式,但這些程式實際並沒有占用你指定的埠,這些埠只是連線到本機器或者別的機器的該埠。所以要grep "(listen)「,因為乙個埠只可能被乙個程式占用的,所以這種方法是可靠的。

2)使用netstat 命令

大家一定對這個命令比較熟悉了,可能你從沒有想到用到來查詢哪乙個程式的占用了指定的埠。但是netstat -an 的確提供了這種功能。所以有問題了一定要想到先去查詢man手冊,不過說實話,某些man手冊寫得讓中國人看不懂,那沒有辦法了,就googe或者 baidu一下吧。

執行man netstat命令,你會發現netstat 提供了'-p'的選項,這個選項的功能是告訴你哪個程式占用了該埠,但是她提供的形式比較古怪是以pid/process_name提供的。pid當然 是程序id了,process_name是程序的命令,中間以'/'號分隔。

和上面的原因一樣,我們只查詢listen的埠,netstat 給我們提供了-l的選項,這個選項不是預設的選項。

下面以1521埠來看怎麼查詢到該程式,我們使用下面的命令:

netstat -lnp|awk 'begin'

在這裡使用awk來匹配第4個字段的模式是為了避免誤判。

3樓:萢萢

使用netstat -a命令試一試。

4樓:微言悚聽

1.查詢被占用的埠。首先是需要輸入命令,檢視被占用的埠的程序,netstat -tunpl |grep 埠號

2.查詢程序id。通過上面的命令就可以列出,這個埠被哪些應用程式所占用,然後找到對應的程序id,

3.根據整合id查詢程序。如果想詳細檢視這個程序,id具體是哪乙個程序,可以通過命令的方式進行檢視程序的詳細資訊,ps -ef|grep 程序id

linu如何檢視shell版本,linux 如何檢視shell版本

幻翼高達 需要準備的材料分別是 電腦 linux連線工具。1 首先連線上linux主機,進入等待輸入指令的linux命令列狀態。2 輸入 bash version,按回車。3 此時列印出的 version 4.2.46 1 release 就是該shell的版本。 吉祥二進位制 1 檢視當前系統支援...

linux 如何檢視程序所佔資源

linux下獲取占用cpu資源最多的10個程序,可以使用如下命令組合 ps aux head 1 ps aux grep v pid sort rn k 3 head linux下獲取占用記憶體資源最多的10個程序,可以使用如下命令組合 ps aux head 1 ps aux grep v pid...

如何在linu下檢視網絡卡硬體資訊

cpulscpu命令,檢視的是cpu的統計資訊.檢視 proc cpuinfo,可以知道每個cpu資訊,如每個cpu的型號,主頻等。可以看下linux資料,如 linux就該這麼學 ethtool i eth0 既然用linux,就多查資料唄,網上很多的 如何在linux 下檢視網絡卡硬體資訊 分享...