当我们查看系统正在运行的进程时,有时候我们想查看以下进程的详细信息,包括绝对路径,这个时候ps的不足指出就显露出来了,而强大的top也只能查看到进程名而已。
这个时候怎么办呢?个人理解,在linux启动一个进程时,会给进程分配一个ID,就是我们的PID,而与此同时了,系统会在/proc下创建一个文件夹,以PID命名,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件,这就我们想要的,就像win下的exe文件,它是原始程序的一个链接,所以当我们用ls -l的时候就能够得到我们的完整路径!
具体实施步骤:
我想查看httpd这个进程所在的目录:
1、
[wacos@Le166 ~]$ ps -ef | grep http
wacos 3148 6743 0 Jan10 ? 00:00:00 ./httpd -k start
得到了进程号3148.
2、
[wacos@Le166 ~]$ ll /proc/3148/exe
lrwxrwxrwx 1 wacos oinstall 0 Jan 13 19:19 /proc/3148/exe -> /opt/wacos/tools/apache/bin/httpd (deleted)
这样就知道了当前运行的httpd进程的路径了。