文章目录
lsof是一个用于列出当前系统打开的文件的命令行工具,它可以显示系统中所有打开的文件,包括网络连接、管道、设备、目录和普通文件等。
lsof命令的基本语法如下:
lsof [options]
其中,options是可选参数,可以用来指定lsof的输出格式、过滤条件等。
下面是一些常用的lsof命令选项:
-a:表示逻辑与,用于指定多个过滤条件之间的关系;-c:表示按进程名过滤;-d:表示按文件描述符过滤;-g:表示按组ID过滤;-i:表示按网络连接过滤;-p:表示按进程ID过滤;-u:表示按用户ID过滤;-t:表示只输出进程ID;-F:表示指定输出格式;-h:表示不显示列名;-n:表示不解析主机名;-P:表示不解析端口号;-r:表示指定输出间隔时间;-s:表示按文件大小过滤;-T:表示指定输出格式。
例如,要列出所有打开的文件,可以使用以下命令:
lsof
要列出指定进程打开的文件,可以使用以下命令:
lsof -p <pid>
要列出指定用户打开的文件,可以使用以下命令:
lsof -u <username>
要列出指定文件名的进程,可以使用以下命令:
lsof <filename>
要列出指定端口号的进程,可以使用以下命令:
lsof -i :<port>
要列出指定目录下打开的文件,可以使用以下命令:
lsof <directory>
除了以上常用的选项外,lsof还支持很多其他的选项,可以通过man lsof命令查看完整的帮助文档。










