当我执行命令来提供正在运行的进程的 pid 时,它给出了如下结果 -
user@machineA:/$ ps -eo pid,command | grep exhibitor | grep java | grep -v grep
1615 java -jar ./exhibitor-1.2.3/lib/exhibitor-1.2.3-jar-with-dependencies.jar --fsconfigdir /opt/exhibitor/conf --hostname machineA
现在我在上面的输出中看到了这条路径 -
./exhibitor-1.2.3/lib/exhibitor-1.2.3-jar-with-dependencies.jar
现在我试图了解这个文件夹在哪里,./exhibitor-1.2.3/
因为我找不到。这个文件夹在同一台 ubuntu 机器上吗?有没有办法找出它所在的目录?
我正在运行 Ubuntu 12.04
答案1
您需要找到该进程的工作目录:
readlink /proc/1615/cwd
请注意,自从该进程在命令行上打开文件以来,它可能已经改变了其工作目录。
如果 JRE 在加载其内容后没有立即关闭 JAR,您可能会在 中找到指向它的符号链接/proc/1615/fd
。
答案2
使用
find / -name "exhibitor-1.2.3" -type d 2>/dev/null
要不就
locate "exhibitor-1.2.3"