Linux/Unix命令行工具:lsof

lsof列出所有进程打开的文件信息。这个文件可以是一个普通文件、一个目录、一个NFS文件、块特别文件、字符特殊文件、一个共享库….. 因为Linux上的几乎所有东西都看成文件,所以lsof命令的应用范围还是很广的。

列出所有打开的文件

所有进程打开的所有文件信息。

查看一个文件被哪个进程使用

只可以指定多个文件:

递归的在一个目录中查找正在使用(打开)的文件

使用grep要快一点:

列出一个用户打开的所有文件

-u参数指定要查询的用户名。

你也可以同时查找多个用户:

列出一个进程打开的文件

-c参数指定程序名

它也可以同时查询多个进程:

列出某个进程或(or)用户打开的文件

列出某个进程和某个用户共同打开的文件

列出除了root用户外的其他所有用户打开的文件

指定进程PID打开的文件

同样可以同时指定多个进程PID:

列出除了某个进程PID的其他所有进程打开的文件

列出所有网络连接

列出所有TCP网络连接

列出所有UDP网络连接

查看谁在使用指定端口

可以用服务名称:

查看谁在使用TCP/UDP指定端口

查看一个用户的网络连接活动

列出所有NFS文件

列出 UNIX Domain Socket

列出指定文件群组进程的所有文件

列出指定文件描述符打开的文件

可以指定文件描述符的范围:

-d参数还有其他特殊类型如 mem、txt。

列出使用某种资源的进程PID

上面命令列出了所有使用网络的进程PID,用它可以轻松的杀死所有使用网络的进程:

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注