Linux / Unix:pwdx 命令示例
我是 Linux 和 Unix 系统管理员新手。如何使用 shell 提示符在 Linux 或类 Unix 系统上查找进程或服务器的当前工作目录?
在 Linux 和 Solairs Unix 上,您可以使用pwdxcomamnd 显示每个进程的当前工作目录。
- lsof 命令
- ps 命令
- pgrep 命令
目的
打印每个进程的当前工作目录。
句法
基本语法如下:
pwdx pid
或者
pwdx pid1 pid2 pid3
pwdx 命令示例
在此示例中,找出名为 lighttpd 的进程的工作目录。首先,运行 ps 命令以找出名为 lighttpd 的进程的 PID:
您可以跳过 ps 和 grep 组合并使用 pgrep 命令,如下所示达到相同目的:
示例输出:
$ ps aux | grep {process-name}
$ ps aux | grep lighttpd
$ pgrep lighttpd
2225
要显示 PID # 2225 的当前工作目录,请输入:
$ sudo pwdx 2225
或
# pwdx 2225
示例输出:
2225: /
使用 /proc/ 文件系统找出进程的当前工作目录
您可以运行以下命令来获取相同的信息:
pgrep processNameHere ls -d /proc/$PID/cwd ## if pid is 1313, try ## ls -d /proc/1313/cwd
查找监狱目录
出于安全考虑,某些进程在 jail 内运行(有关详细信息,请参阅 chroot 命令)。以下是在 jail 内运行的命名(BIND DNS 服务器)进程的示例:
示例输出:
在此示例中,输出表明命名进程在 /var/cache/bind 位置具有根目录。
# pgrep named
# pwdx 1617
# ls -d /proc/1617/cwd
pwdx 命令选项
从命令手册页:
选项 | 描述 |
pids | 陈述一个或多个进程的 pid。 |
-V | 显示程序的版本。 |