lsof命令



lsof可以列出某個進程打開的所有文件信息,例如:普通的文件、目錄、NFS文件、塊文件、字符文件、共享庫、常規管道、命名管道、符號鏈接、Socket流、網絡Socket、UNIX域Socket,以及其它更多類型。含Unix系統“一切皆文件”的重要哲學思想。


lsof [options] filename

lsof  /path/to/somefile    :顯示打開指定文件的所有進程之列表


lsof -c string                    :顯示其COMMAND列中包含指定字符(string)的進程所有打開的文件;                                                此選項可以重複使用,以指定多個模式;

lsof -p PID                        :查看該進程打開了哪些文件;進程號前可以使用脫字符“^”取反;


lsof -u USERNAME           :顯示指定用戶的進程打開的文件;用戶名前可以使用脫字符“^”取反,如“lsof -u ^root”則用於顯示非root用戶打開的所有文件;


lsof -g GID                        :顯示歸屬gid的進程情況


lsof +d /DIR/                    :顯示指定目錄下被進程打開的文件


lsof +D /DIR/                    :基本功能同上,但lsof會對指定目錄進行遞歸查找,注意這個參數要比                                                grep版本慢


lsof -a                                :按“與”組合多個條件,如lsof -a -c apache -u apache


lsof -N                               :列出所有NFS(網絡文件系統)文件


lsof -d FD                          :顯示指定文件描述符的相關進程;也可以爲描述符指定一個範圍,如

                                            0-2   表示0,1,2三個文件描述符


lsof -d mem                        : 列出所有內存映射文件;


lsof -d mmap                    :顯示所有內存映射設備;


lsof -d  txt                         :列出所有加載在內存中並正在執行的進程,包含code和data;


lsof -d  cwd                       :正在訪問當前目錄的進程列表;
    
lsof -n                                :不反解IP至HOSTNAME


lsof -i                                 :用以顯示符合條件的進程情況

lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
    46:IPv4或IPv6
    protocol:TCP or UDP
    hostname:Internet host name
    hostaddr:IPv4地址
    service:/etc/service中的服務名稱(可以不只一個)
    port:端口號 (可以不只一個)

查看22端口現在運行的情況
lsof -i :22




 

 
 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章