如何从进程ID获取窗口ID

如何从进程ID获取窗口ID

此命令将获取启动的进程的 PID xterm

xterm & export APP_PID=$!

如何获取与该进程关联的窗口 ID(xterm窗口 ID)?我的意思是,xdotool selectwindow单击窗口后将返回的 ID xterm

答案1

您可以通过以下方式获取匹配窗口的列表

 xdotool search --pid [pid]

另见xdotool help search

答案2

我将使用这个简单的命令来获取十六进制格式的窗口 ID

wmctrl -l | grep -i xterm | awk '{print $1}'

对于十进制格式,bc可以使用命令进行转换

echo "ibase=16; `wmctrl -l | grep -i xterm | cut -c 3-11 | tr a-z A-Z`" | bc

答案3

在“其他”论坛中对此进行了讨论:

在第一个中,@帕特里克指出xwininfo可以返回信息全部窗口,并使用xprop对于每个窗口,您可以检查属性_NET_WM_PID,将其与进程 ID 进行匹配。

相关内容