pwdx PID 是最简单专一的查看进程当前工作目录(CWD)的方法,直接读取 /proc/PID/cwd 符号链接,支持多 PID 查询和 $$ 查当前 shell,注意权限限制及与 /proc/PID/exe 的区别。

直接用 pwdx PID 就能查到进程当前的工作目录(CWD),这是最简单、最专一的方法。
用 pwdx 快速查看工作目录
pwdx 是 Linux 专门为这个目的设计的命令,它读取 /proc/PID/cwd 这个符号链接,输出简洁明确:
- 运行
pwdx 1234,会直接显示类似1234: /var/www/html - 支持一次查多个 PID:
pwdx 1234 5678 9012 - 查当前 shell 的工作目录可写成:
pwdx $$
手动读取 /proc/PID/cwd
如果你偏好底层方式或脚本中使用,可以直接检查符号链接:
-
ls -l /proc/1234/cwd→ 输出类似cwd -> /home/user/project - 该路径是进程启动时所在目录,或之后通过
chdir()改变过的当前目录 - 注意:普通用户无法读取其他用户进程的
/proc/PID/cwd,除非有对应权限
区分工作目录和程序路径
别把“当前工作目录”(CWD)和“可执行文件位置”搞混:
-
pwdx或/proc/PID/cwd给出的是进程当前操作所处的目录,不是程序文件在哪 - 要找二进制文件真实路径,得看
ls -l /proc/PID/exe - 比如一个在
/opt/app启动的 Python 脚本,pwdx显示/opt/app,但exe指向的是/usr/bin/python3
常见问题提示
遇到错误时,先看这几条:
-
No such process→ 进程已退出,PID 无效 -
Permission denied→ 权限不足,尝试加sudo(仅限你有权查看的进程) - 容器内进程可能查不到 → 宿主机看到的 PID 和容器命名空间不一致,需进容器内查


















