温馨提示×

linux进程如何查看路径

小樊
33
2026-07-10 06:15:02
栏目: 智能运维

在 Linux 中查看进程对应的路径,常见有几种场景(可执行文件路径、当前工作目录、打开的文件路径等),下面按需求给你总结最常用的方法。


一、查看进程的可执行文件路径(最常用)

✅ 方法 1:ps 命令

ps -p PID -o exe=

ps -fp PID

示例:

ps -p 1234 -o exe=

输出:

/usr/bin/nginx

✅ 方法 2:/proc 文件系统(最准确)

ls -l /proc/PID/exe

示例:

ls -l /proc/1234/exe

输出:

/proc/1234/exe -> /usr/bin/nginx

这是最推荐的方法,适用于几乎所有情况


二、查看进程的当前工作目录(cwd)

ls -l /proc/PID/cwd

示例:

ls -l /proc/1234/cwd

输出:

/proc/1234/cwd -> /var/log/nginx

三、查看进程启动命令和参数

cat /proc/PID/cmdline

ps -p PID -o args=

示例:

ps -p 1234 -o args=

输出:

nginx: master process /usr/sbin/nginx -g daemon off;

四、查看进程打开的所有文件/路径

✅ 方法 1:lsof

lsof -p PID

只看文件路径:

lsof -p PID | grep REG

✅ 方法 2:/proc/PID/fd

ls -l /proc/PID/fd

示例:

ls -l /proc/1234/fd

五、根据进程名反查 PID 再查路径

pidof nginx

pgrep nginx

然后:

ls -l /proc/$(pidof nginx)/exe

六、常见场景速查表

需求 命令
可执行文件路径 ls -l /proc/PID/exe
当前工作目录 ls -l /proc/PID/cwd
启动命令 ps -p PID -o args=
打开的文件 lsof -p PID
查看所有进程路径 ps -eo pid,exe,cmd

✅ 推荐组合(实战)

ps -eo pid,exe,args | grep nginx

如果你有具体场景(比如:Docker 容器里的进程、僵尸进程、systemd 服务、想查“这个端口是哪个程序开的”),可以直接告诉我,我可以给你更精准的命令。

0