如何找出进程正在哪个文件夹中运行?

如何找出进程正在哪个文件夹中运行?

在 *nix 中,您可以使用ps它来查看正在运行的进程。但如果可执行文件在设备中有多个同构文件,我们就无法确定它是从哪里调用的。

这与我上一个关于该主题的问题略有不同。 如何知道正在运行的进程的绝对路径?

答案1

尝试这个:

ls -l /proc/<PID>/cwd

答案2

来自 HUB 的答案:

readlink /proc/<PID>/cwd

甚至

readlink /proc/$(pgrep <program_name>)/cwd

答案3

你无法判断进程在哪里被调用,仅在当前。查看cwd(“当前工作目录”)链接,而不是exe

答案4

我猜这个命令应该可以工作。这是一个小的解决方法,但至少在我的计算机上有效。

对于 $(ps e PID) 中的 strlist;如果 [ ${strlist:0:4} = "PWD=" ];则 echo ${strlist:4};fi;完成

相关内容