龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

Linux lsof命令详解和使用示例(总结的比较详细)(2)

时间:2014-05-19 02:37来源:网络整理 作者:网络 点击:
分享到:
代码如下: [root@localhost ~]# lsof /bin/bash COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME bash 24159 root txt REG 8,2 801528 5368780 /bin/bash bash 24909 root txt REG 8,2 801528 5368780 /bin/bas

 

代码如下:

[root@localhost ~]# lsof /bin/bash
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 24159 root txt REG 8,2 801528 5368780 /bin/bash
bash 24909 root txt REG 8,2 801528 5368780 /bin/bash
bash 24941 root txt REG 8,2 801528 5368780 /bin/bash
[root@localhost ~]#

实例3:递归查看某个目录的文件信息

命令:lsof test/test3

输出:

 

代码如下:

[root@localhost ~]# cd /opt/soft/
[root@localhost soft]# lsof test/test3
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 24941 root cwd DIR 8,2 4096 2258872 test/test3
vi 24976 root cwd DIR 8,2 4096 2258872 test/test3
[root@localhost soft]#

说明:

使用了+D,对应目录下的所有子目录和文件都会被列出

实例4:不使用+D选项,遍历查看某个目录的所有文件信息的方法

命令:lsof |grep 'test/test3'

输出:


代码如下:

[root@localhost soft]# lsof |grep 'test/test3'
bash 24941 root cwd DIR 8,2 4096 2258872 /opt/soft/test/test3
vi 24976 root cwd DIR 8,2 4096 2258872 /opt/soft/test/test3
vi 24976 root 4u REG 8,2 12288 2258882 /opt/soft/test/test3/.log2013.log.swp
[root@localhost soft]#

实例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

实例11:列出多个进程号对应的文件信息

命令:lsof -p 1,2,3

实例12:列出除了某个进程号,其他进程号所打开的文件信息

命令:lsof -p ^1

实例13:列出所有的网络连接

命令: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)

例如:lsof  -d  txt

例如:lsof  -d  1

例如:lsof  -d  2

说明:0表示标准输入,1表示标准输出,2表示标准错误,从而可知:所以大多数应用程序所打开的文件的 FD 都是从 3 开始

实例23:根据文件描述范围列出文件信息

命令:lsof -d 2-3

实例24:列出COMMAND列中包含字符串" sshd",且文件描符的类型为txt的文件信息

命令:lsof -c sshd -a -d txt

输出:

精彩图集

赞助商链接