linux:查看一个进程的工作目录

一,遇到的问题:

看到一个进程,想知道这个进程的工作目录,如下:

# ps auxfww | grep redis
root     22715  0.0  0.0 103252   828 pts/3    S+   17:10   0:00  |                   \_ grep redis
root     25816  0.0  0.7 455064 57840 ?        Ssl   2022 1111:11 ./bin/redis-server 172.17.173.23:6379
root      6065  0.0  0.7 247940 57800 ?        Ssl   2022 218:30 /data/software/redisdev/bin/redis-server *:6399 

可以看到进程id是25816

二,方法一,用lsof获取工作目录

# lsof -a -d cwd -p 25816
COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
redis-ser 25816 root  cwd    DIR 252,17     4096 22724611 /data/soft/redis-3.2.8

可以看到cwd为/data/soft/redis-3.2.8

三,方法二,查看进程信息

# ll -a /proc/25816
total 0
dr-xr-xr-x   8 root root 0 Jul  9 03:51 .
dr-xr-xr-x 232 root root 0 Aug  2  2018 ..
dr-xr-xr-x   2 root root 0 Jul  9 17:16 attr
-rw-r--r--   1 root root 0 Jul  9 17:16 autogroup
-r--------   1 root root 0 Jul  9 17:16 auxv
-r--r--r--   1 root root 0 Jul  9 04:41 cgroup
--w-------   1 root root 0 Jul  9 17:16 clear_refs
-r--r--r--   1 root root 0 Jul  9 04:41 cmdline
-rw-r--r--   1 root root 0 Jul  9 04:41 comm
-rw-r--r--   1 root root 0 Jul  9 17:16 coredump_filter
-r--r--r--   1 root root 0 Jul  9 17:16 cpuset
lrwxrwxrwx   1 root root 0 Jul  9 03:53 cwd -> /data/soft/redis-3.2.8
-r--------   1 root root 0 Jul  9 17:16 environ
lrwxrwxrwx   1 root root 0 Jul  9 04:41 exe -> /data/soft/redis-3.2.8/bin/redis-server
dr-x------   2 root root 0 Jul  9 03:51 fd
dr-x------   2 root root 0 Jul  9 03:53 fdinfo

可以看到cwd是指向了/data/soft/redis-3.2.8

posted @ 2025-07-19 07:41  刘宏缔的架构森林  阅读(51)  评论(0)    收藏  举报