lsof
命令是什麼?
可以列出被程序所開啟的檔案的資訊。被開啟的檔案可以是
1.普通的檔案
2.目錄
3.網路檔案系統的檔案
4.字元裝置檔案
5.(函式
)共享庫
6.管道,命名管道
7.符號鏈結
8.底層的
socket
字流,網路
socket
,unix
網域名稱socket
怎樣使用
lsof
這裡主要用案例的形式來介紹
lsof
命令的使用
1.列出所有開啟的檔案
:lsof
備註:
如果不加任何引數,就會開啟所有被開啟的檔案,建議加上一下引數來具體定位
2. 檢視誰正在使用某個檔案
lsof /filepath/file
3.遞迴檢視某個目錄的檔案資訊
lsof +d /filepath/filepath2/
備註:
使用了+d
,對應目錄下的所有子目錄和檔案都會被列出
4. 比使用
+d選項,遍歷檢視某個目錄的所有檔案資訊的方法
lsof | grep 『
/filepath/filepath2/
』5.
列出某個使用者開啟的檔案資訊
lsof -u username
備註: -u
選項,u
其實是user
的縮寫6.
列出某個程式所開啟的檔案資訊
lsof -c mysql
備註: -c
選項將會列出所有以
mysql
開頭的程式的檔案,其實你也可以寫成
lsof | grep mysql,
但是第一種方法明顯比第二種方法要少打幾個字元了
7. 列出多個程式多開啟的檔案資訊
lsof -c mysql -c apache
8. 列出某個使用者以及某個程式所開啟的檔案資訊
lsof -u test -c mysql
9. 列出除了某個使用者外的被開啟的檔案資訊
lsof -u ^root
備註:^
這個符號在使用者名稱之前,將會把是
root
使用者開啟的程序不讓顯示
10.
通過某個程序號顯示該進行開啟的檔案
lsof -p 1
23411.
列出多個程序號對應的檔案資訊
lsof -p 123,456,789
12.
列出除了某個程序號,其他程序號所開啟的檔案資訊
lsof -p ^1
34313 .
列出所有的網路連線
lsof -i
14. 列出所有
tcp
網路連線資訊
lsof -i tcp
15. 列出所有
udp網路連線資訊
lsof -i udp
16.
列出誰在使用某個埠
lsof -i :3306
17. 列出誰在使用某個特定的
udp埠
lsof -i udp:55
特定的tcp
埠lsof -i tcp:80
18.
列出某個使用者的所有活躍的網路埠
lsof -a -u test -i
19.
列出所有網路檔案系統
lsof -n
20.網域名稱
socket
檔案lsof -u
21.某個使用者組所開啟的檔案資訊
lsof -g 5555
22.
根據檔案描述列出對應的檔案資訊
lsof -d description(like 2)
23.
根據檔案描述範圍列出檔案資訊
lsof -d 2-3
原文
lsof 命令使用
lsof list open files 是乙個列出當前系統開啟檔案的工具。在linux環境下,任何事物都以檔案的形式存在,通過檔案不僅僅可以訪問常規資料,還可以訪問網路連線和硬體。所以如傳輸控制協議 tcp 和使用者資料報協議 udp 套接字等,系統在後台都為該應用程式分配了乙個檔案描述符,無論這...
lsof命令的使用
今天發現了這個命令lsof感覺蠻有用的尤其是對伺服器管理的人來說應該更加有用.這個命令可以看程序所需要開啟的檔案.當在lsof後邊沒有跟任何引數時,該命令將會列出當前系統中被所有程序開啟的所有檔案 下邊這幾個命令指出開啟某檔案的程序 lsof which httpd 那個程序在使用apache的可執...
lsof命令使用整理
lsof usage abhlnnooprstuvv c c d s d d f cgg f f g s i i l l m o o p s r t s t t t u s w x fl names 1.列出所有開啟的檔案 lsof備註 如果不加任何引數,就會開啟所有被開啟的檔案,建議加上一下引數來...