世界杯欧洲区预选赛_世界杯足球几年一次 - chinaacecloud.com



lsof 命令语法与实例

lsof 命令简介

lsof 是 Linux 和 Unix 系统上一个非常有用的命令行工具,全称是“list open files”,意为“列出打开的文件”。在 Unix 和类 Unix 系统中,几乎所有事物都以文件的形式存在,包括普通的数据文件、目录、网络套接字、管道,甚至是硬件设备。因此,lsof 提供的信息不仅限于传统意义上的“文件”。

man在线官方手册: lsof

主要功能

识别进程打开的文件: lsof 可以显示哪些进程打开了哪些文件,这在诊断程序错误或系统挂起时特别有用。

网络和套接字文件: 通过 lsof,用户可以查看所有打开的网络连接和套接字,非常适用于网络监控和故障排除。

查找被删除的文件: 即便文件被删除,只要还有进程保持打开状态,lsof 依然可以找到它,这对于恢复丢失数据很有帮助。

安全监控: 管理员可以使用 lsof 监控可疑的网络活动和文件访问行为。

lsof打开的文件可以是:

普通文件:例如文档、图片、脚本等。

目录:在 Unix 和类 Unix 系统中,目录也被视作一种文件。

库文件:进程使用的动态链接库或共享库。

网络文件:表示网络套接字,例如 TCP/IP 套接字。

管道文件:用于进程间通信的管道。

设备文件:表示硬件设备,比如/dev/sda(硬盘驱动器)、/dev/tty(终端设备)等。

特殊文件:如符号链接。

语法与实例

lsof 命令的基本语法如下:

lsof [选项][文件]

lsof 命令的基本使用如下:

命令

描述

例子

lsof

列出系统上所有打开的文件

lsof

lsof -i

显示所有网络连接

lsof -i

lsof -u [用户名]

列出特定用户打开的文件

lsof -u root

lsof -c [进程名]

列出特定进程打开的文件

lsof -c sshd

lsof -p [PID]

列出特定进程ID打开的文件

lsof -p 123

lsof +D [目录]

列出在特定目录下打开的文件

lsof +D /usr

lsof -i :[端口]

列出打开特定端口的进程

lsof -i :22

lsof -i [协议]

显示特定协议(如TCP或UDP)的连接

lsof -i tcp

lsof -i [协议]@[主机]:[端口]

显示特定地址和端口上的连接

lsof -i tcp@localhost:80

lsof -d [文件描述符]

列出使用特定文件描述符的文件

lsof -d 2

lsof -t

仅列出进程ID

lsof -t -i

lsof -P

不将端口号转换为服务名

lsof -P

lsof -N

显示 NFS 文件

lsof -N

lsof -l

不将用户ID转换为用户名

lsof -l