Linux常用命令

一般用过linux的人都知道ps -ef|grep XXX
可是用ps看到的不是全路径,
ps -ef|grep http
500       5948 15608  0 18:09 pts/0    00:00:00 grep http
root     31723     1  0 Mar06 ?        00:00:01 httpd
500      31725 31723  0 Mar06 ?        00:00:01 httpd

那如何查看进程的全路径呢?
其实每个进程启动之后在 /proc下面有一个于pid对应的路径

例如上面的
ps -ef|grep http

显示:root     31723     1  0 Mar06 ?        00:00:01 httpd

31723就是进程号

到/proc/31723下,ll(或者ls -l)会看到:

# ll /proc/31723
总用量 0
dr-xr-xr-x 2 root root 0  3月 19 18:13 attr
-r-------- 1 root root 0  3月 19 18:13 auxv
-r--r--r-- 1 root root 0  3月 19 18:04 cmdline
-rw-r--r-- 1 root root 0  3月 19 18:13 coredump_filter
-r--r--r-- 1 root root 0  3月 19 18:13 cpuset
lrwxrwxrwx 1 root root 0  3月 19 18:13 cwd -> /
-r-------- 1 root root 0  3月 19 18:13 environ
lrwxrwxrwx 1 root root 0  3月 19 18:13 exe -> /usr/sbin/httpd
dr-x------ 2 root root 0  3月 19 18:13 fd
......

其中的exe,就是你要查找的进程所在路径了。

 

 

Linux查看已知的进程对应目录

 

解决方法:pwdx pid(pid为你想查看的进程的pid)
posted @ 2016-08-10 09:19  登高一呼  阅读(145)  评论(0编辑  收藏  举报