在 Linux 系统中,查看进程的位置(即进程对应的可执行文件路径)有以下几种常用方法:
ps 命令 + 进程信息ps -p <PID> -o cmd=
# 或
ps -aux | grep <进程名>
1234 的进程路径bash
ps -p 1234 -o cmd=-o cmd= 显示完整的命令路径(可能包含参数)。ps -auxww(ww 显示完整宽度)。pwdx 命令(进程工作目录)pwdx <PID>
bash
pwdx 1234bash
1234: /path/to/working/directorylsof 命令(列出打开文件)lsof -p <PID> | grep txt
bash
lsof -p 1234 | grep txtbash
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 1234 root txt REG 253,0 1234567 123456 /usr/bin/bashtxt 类型表示进程的可执行文件,NAME 列即为路径。readlink 解析 /proc 虚拟文件系统readlink -f /proc/<PID>/exe
bash
readlink -f /proc/1234/exebash
/usr/bin/python3/proc/<PID>/exe 是进程可执行文件的符号链接,readlink -f 解析真实路径。pgrep + readlink 组合(通过进程名)readlink -f /proc/$(pgrep -n <进程名>)/exe
nginx 进程路径bash
readlink -f /proc/$(pgrep -n nginx)/exewhich 或 whereis(仅限已知命令名)which <命令名>
# 或
whereis <命令名>
bash
which python3$PATH 中的命令,不适用于自定义路径启动的进程。| 需求 | 推荐命令 |
|---|---|
| 已知 PID,查路径 | readlink -f /proc/<PID>/exe |
| 已知进程名,查路径 | pgrep -n <名> \| xargs -I{} readlink -f /proc/{}/exe |
| 查看进程的工作目录 | pwdx <PID> |
| 查看进程的完整命令行 | ps -p <PID> -o cmd= |
root 权限才能查看其他用户的进程路径(如 sudo)。[kthreadd]),无实际路径。