Ins*_*yte 18
我确实喜欢lsof
,但我认为对于这样一个简单的问题来说太过分了。该/proc
文件系统包含了你想知道的一切。也许一个例子是最好的:
# ps ax|grep 尾 7196 pts/4 S+ 0:00 tail -f /var/log/messages 8773 pts/0 R+ 0:00 grep 尾 # ls -l /proc/7196/cwd lrwxrwxrwx 1 insyte insyte 0 2009-07-29 19:05 /proc/7196/cwd -> /home/insyte # ls -l /proc/7196/fd 共 0 lrwx------ 1 insyte insyte 64 2009-07-29 19:05 0 -> /dev/pts/4 lrwx------ 1 insyte insyte 64 2009-07-29 19:05 1 -> /dev/pts/4 lrwx------ 1 insyte insyte 64 2009-07-29 19:02 2 -> /dev/pts/4 lr-x------ 1 insyte insyte 64 2009-07-29 19:05 3 -> /var/log/messages
如您所见,该/proc/$PID
目录包含一个名为“cwd”的符号链接,用于链接进程的 CWD。中列出的打开文件描述符也是如此/proc/$PID/fd
。
该/proc/$PID
层次结构包含了大量有关所有正在运行的进程的信息。值得一试!
Dis*_*ard 13
如果您有可用的命令lsof [whcih 大多数 *nix 风格都可以],您将使用:
lsof -p NNN
Run Code Online (Sandbox Code Playgroud)
列出进程 NNN 打开的文件。我有一段时间没有使用 BSD,但使用内存融合器它与 lsof 非常相似。
我不确定有什么命令可以找到进程的cwd,但在 Linux 上 cwd 被符号链接到进程的 /proc 目录中,即。/proc/NNN/cwd.
归档时间: |
|
查看次数: |
4448 次 |
最近记录: |