问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

lsof 命令介绍和使用案例

创作时间:
作者:
@小白创作中心

lsof 命令介绍和使用案例

引用
CSDN
1.
https://blog.csdn.net/lisanmengmeng/article/details/144818404

lsof(list open files)是一个强大的命令行工具,用于在 Linux 和 Unix 系统中列出当前打开的文件及其相关的进程信息。由于在这些系统中,几乎所有的事物(包括常规文件、目录、网络连接等)都被视为文件,因此 lsof 可以用来监控和管理系统资源。

功能特点

  • 显示打开的文件: 列出所有被进程打开的文件,包括普通文件、目录、网络连接等。
  • 进程关联: 显示每个打开文件的进程ID(PID)、用户、文件描述符等信息。
  • 网络监控: 可以查看当前活动的网络连接和端口使用情况。

常用选项

  • lsof: 列出所有打开的文件。
  • lsof -u username: 列出指定用户打开的文件。
  • lsof -p PID: 列出指定进程ID所打开的文件。
  • lsof -i: 列出所有网络连接。
  • lsof -i :port: 查看特定端口被哪个进程使用。
  • lsof +D /path/to/directory: 递归列出指定目录下所有打开的文件。
  • lsof -c command: 列出以指定命令开头的所有进程所打开的文件。

使用案例

  1. 列出所有打开的文件

    lsof
    

    此命令将输出当前系统中所有打开的文件及其相关信息。

  2. 列出特定用户打开的文件

    lsof -u root
    

    显示用户为 root 的所有打开文件。

  3. 查看某个特定端口被哪个进程占用

    lsof -i :80
    

    此命令将列出使用 TCP 端口 80 的所有进程,通常用于检查 Web 服务器。

  4. 列出某个进程打开的文件

    lsof -p 1234
    

    将显示 PID 为 1234 的进程所打开的所有文件。

  5. 列出某个目录下被打开的文件

    lsof +D /var/log
    

    递归列出 /var/log 目录及其子目录下被打开的所有文件。

  6. 查看当前活动的网络连接

    lsof -i
    

    此命令将显示系统中所有活动的网络连接。

  7. 查找正在使用某个特定文件的进程

    lsof /path/to/file.txt
    

    将显示正在使用 /path/to/file.txt 文件的进程信息。

  8. 杀死某个用户的所有进程

    kill -9 `lsof -t -u username`
    

    此命令将强制终止指定用户所拥有的所有进程。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号