所以我正在编写一个 python 脚本,我的目标是使用 lsof 为本地用户列出特定目录(我的主文件夹)下的所有打开文件,并且只输出“uniq”条目。
我的脚本如下所示:
import os, sys, getpass
user = getpass.getuser()
cmd = "lsof -u " + user + " +d ~ | sort | uniq"
os.system(cmd)
这种做我想要它做的事情,它为当前本地用户做 lsof,但它无法专门查看我指定的主目录。相反,它在根目录上执行 lsof 并为用户列出整个文件系统的所有 lsof。但是,当我在没有 的情况下执行相同的命令时,-u user
它在主目录中看起来特别明显。我一直在研究为什么会这样,是的,我尝试过使用+d /home/
and+d ~/home/
而不是仅仅+d ~
为了让它工作而没有成功,所以我有点难过。任何建议都会很棒:)