通过窗口知道进程的 PID?

通过窗口知道进程的 PID?

我如何知道sudoUbuntu UI 上显示的进程映像名称(使用 从终端运行)?

答案1

根据你在另一个问题中的要求,我再次给出我的回答:

我确信有一个更干净的方法可以做到这一点,但是对于你的第二个问题,你可以尝试这个:

   xprop _NET_WM_PID | sed 's/_NET_WM_PID(CARDINAL) = //' | ps `cat`

这将使光标变成十字形,您可以用它单击打开的窗口。它将在您运行它的终端中报告 PID 和命令。

一般来说,xprop 和 xwininfo 将为您提供有关打开窗口的大量信息。

我用来围绕 cat 的“撇号”是我键盘上的 ~ 键,无需按 Shift 键。这应该会为您提供有关该主题的更多信息:

重音符号和反引号

答案2

您可以尝试xprop | grep WM_CLASS然后单击您感兴趣的窗口。

例子:

#> xprop | grep WM_CLASS
WM_CLASS(STRING) = "gedit", "Gedit"

#> xprop | grep WM_CLASS
WM_CLASS(STRING) = "gcalctool", "Gcalctool"

由于我们需要 PID,因此我们需要执行xprop | grep PID

答案3

在终端中运行此命令:

xprop | awk '/PID/ {print $3}'

您的鼠标指针将被十字线取代;选择您感兴趣的窗口。

此方法仅显示拥有该窗口的进程的 PID(这似乎就是您想要的)。

答案4

运行xprop | awk '/_NET_WM_PID\(CARDINAL\)/{print $NF}'并单击您想要 PID 的窗口将会把 PID 打印到终端。

相关内容