Ubuntu
netstat 顯示埠號而不是程序名
我想查看哪個埠,例如 postgresql 正在監聽,所以我使用:
netstat -l
但這試圖變得聰明並列印程序名稱而不是埠:
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 localhost:postgresql *:* LISTEN tcp 0 0 *:31416 *:* LISTEN
如何使用 netstat 確定任何程序正在偵聽哪個埠?
netstat
正在將(預設)埠轉換為服務名稱,它從/etc/services
文件中獲取此映射。因此,您可以從以下位置獲取埠
/etc/services
:grep '^postgresql' /etc/services
或者更好地添加
-n
選項以netstat
防止任何(主機、埠、主機名)解析並以數字形式發布輸出:netstat -nl
-t
您可以通過添加僅顯示偵聽 TCP 套接字的選項來限制搜尋界面(類似於-u
UDP,-x
對於 UNIX 域套接字):netstat -nlt
您還可以在結果上使用任何標准文本處理工具來僅獲取所需的內容。