Linux/Unix:pwdx命令示例

时间:2020-01-09 10:46:02  来源:igfitidea点击:

如何使用shell提示符在Linux或者类Unix系统上找到进程或者服务器的当前工作目录?
在Linux和Solairs Unix上,可以使用pwdxcomamnd来显示每个进程的当前工作目录。

此命令取决于/proc /文件系统,以获取进程ID(PID)列表。

pwdx命令仅在Linux和Sun/Oracle Solaris Unix上可用。
如果该命令在类Unix系统上不可用,请尝试使用以下命令之一的组合:

  • lsof命令
  • ps命令
  • pgrep命令

语法

基本语法如下:

pwdx pid

或者

pwdx pid1 pid2 pid3

pwdx命令示例

在此示例中,找到名为lighttpd的进程的工作目录。
首先,运行ps命令找出名为lighttpd的进程的PID:

$ ps aux | grep {process-name}
$ ps aux | grep lighttpd

出于相同的目的,您可以跳过ps和grep组合并使用pgrep命令,如下所示:

$ 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目录

为了安全起见,某些进程会在 Jail中运行(有关更多信息,请参见chroot命令)。
这是在 Jail中运行的命名(BIND DNS服务器)进程的示例:

# pgrep named
# pwdx 1617
# ls -d /proc/1617/cwd

pwdx命令选项

在pwdx(1)命令手册页中:

选项说明
pids声明一个或者多个进程的pid。
-V显示程序的版本。