lsof - 仅将输出限制为物理文件 - 如何?

Vla*_*sny 33 linux lsof

我如何告诉 lsof 我只需要列出物理文件(不是套接字,不是 TCP/IP 连接,只有物理文件)?

Dav*_*ger 41

刚刚浏览了一些手册页,看来您使用了以下命令:

sudo lsof /
Run Code Online (Sandbox Code Playgroud)

这将列出 / 目录中所有打开的文件,这是 Linux 文件系统上的所有内容。刚刚测试,它只显示 REG 和 DIR。

更多例子:

lsof -a -d 0-999 -c <command name> /
lsof -a -d 0-999 -p <pid> /
Run Code Online (Sandbox Code Playgroud)

0-999 将其限制为具有文件描述符编号的文件。

  • lsof / 只包括根文件系统上的文件。如果您安装了多个文件系统,它们将不会出现在输出中。我发现最好的方法是只使用 grep。 (5认同)
  • 还将包括 FIFO。 (2认同)

Kyl*_*ndt 11

可能有一个开关,但如果你不介意通过 grep 过滤它,你可以这样做sudo lsof | egrep 'REG|DIR',假设“物理文件”是指常规文件和目录。

有关该man lsof列中可能包含的所有类型,请参阅手册页的 OUTPUT :: TYPE 部分。

  • 可能有一个开关,但联机帮助页读起来就像某人的博士论文...... :) (28认同)