在 Linux 中使用 Pwdx 查找进程的当前工作目录

你知道“pwd”命令,不是吗? pwd 命令(代表 怨恨 工作 Directory) 用于打印当前工作目录。 关于什么 “密码”? 你用过或听说过吗? 不? 没问题! pwdx 命令用于报告进程的当前工作目录。 在本指南中,我们将看到如何在 Linux 中使用 pwdx 命令查找进程的当前工作目录。

在 Linux 中使用 Pwdx 查找进程的当前工作目录

pwdx 命令的一般用法如下:

$ pwdx <PID>

出于本指南的目的,我们将找到 firefox 过程。

首先,我们需要找到进程ID firefox. 为此,请使用“ps”命令,如下所示:

$ pgrep firefox 5238

PID 的 firefox 是 5238。现在,找出 PID 5238 的工作目录,如下所示:

$ pwdx 5238

示例输出:

5238: /home/sk

或者,您可以将两个命令组合为一个命令,并找到当前工作目录 firefox 过程如下:

$ pwdx $(pgrep firefox)

如您所见,当前工作目录为 firefox 过程是 /家/sk. 这样我们就可以轻松找出进程当前正在哪个目录中运行! 请注意,这些命令不显示调用进程的位置,只显示它当前所在的位置。

如果要打印多个进程的当前目录,请提及以下以空格分隔的 PID:

$ pwdx 5238 21126 5238: /home/sk 21126: /home/sk

有关更多详细信息,请参阅手册页。

$ man pwdx

使用 ls、lsof 和 readlink 命令查找 Linux 进程的当前工作目录

如果 pwdx 由于任何原因不可用,以下命令可以让您获得 Linux 进程的工作目录:

  • ls
  • lsof
  • 阅读链接

首先,使用 pgrep 命令找到进程的 PID:

$ pgrep firefox 5238

接下来,使用“ls”命令找到进程的当前工作目录,如下所示:

$ ls -l /proc/5238/cwd

这里,cwd 表示当前工作目录。

示例输出:

lrwxrwxrwx 1 sk sk 0 Jun 17 15:31 /proc/5238/cwd -> /home/sk

找出当前的工作目录 firefox 使用“lsof”命令处理,运行:

$ lsof -p 5238 | grep cwd

或者,结合这两个命令并使用以下单行获取结果:

$ lsof -p $(pgrep firefox) | grep cwd

示例输出:

firefox 5238 sk cwd DIR 8,1 4096 4325378 /home/sk

找出当前工作目录 firefox 使用“readlink”命令处理,运行:

$ readlink -e /proc/5238/cwd/ /home/sk

有关详细信息,请参阅手册页:

$ man ls
$ man lsof
$ man readlink

希望这可以帮助。

相关阅读:

  • 如何找出一个进程在 Linux 中运行了多长时间
  • 如何在 Linux 中更改进程的优先级
  • 如何在 Linux 上使用 Procs 显示进程信息

感谢您的光临!

帮助我们帮助您:

  • 订阅我们的电子邮件通讯: 立即注册
  • 支持 OSTechNix : 通过贝宝捐赠
  • 下载免费电子书和视频: TradePub 上的 OSTechNix
  • 联系我们: 红迪网 | Facebook | 推特 | 领英 | RSS订阅

祝你有美好的一天!!

LinuxLinux 命令Linux processeslslsofPwdxreadlink