编辑1
我在使用给出的参数时遇到了问题.也许这是我通过NSTask传递我的论点的方式?有关如何做到这一点的任何建议?
NSTask *file_Task = [NSTask new];
[file_Task setLaunchPath:@"/usr/sbin/lsof"];
[file_Task setArguments:[NSArray arrayWithObjects:@"+p", the_Pid, nil]];
Run Code Online (Sandbox Code Playgroud)
下午好的编码员....
我正在使用以下命令:
lsof +p 13812
Run Code Online (Sandbox Code Playgroud)
获取进程访问的文件列表.问题是它给了我很多我不想要的其他信息,如TYPE,DEVICE等.
是否有一个参数我可以添加到上面的命令,以便我只得到NAME?
谢谢你,谢谢你,谢谢你!:)
埃里克
您可以使用:
lsof -Fn +p 12345
Run Code Online (Sandbox Code Playgroud)
这将输出一个行列表,第一行p后面是进程ID,后面的所有行n后面跟着文件名.
如果您想快速预处理,可以执行类似以下操作:
lsof -Fn +p 12345 | tail -n +2 | cut -c2-
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅lsof手册页,特别是在OUTPUT FOR OTHER PROGRAMS标题下.