Hexのfocus(active)ウィンドウのウィンドウIDを取得する方法は?
このハックを試してください:
wmctrl -lp | grep $(xprop -root | grep _NET_ACTIVE_WINDOW | head -1 | \
awk '{print $5}' | sed 's/,//' | sed 's/^0x/0x0/')
例えば:
$ wmctrl -lp | grep $(xprop -root | grep _NET_ACTIVE_WINDOW | head -1 | \
> awk '{print $5}' | sed 's/,//' | sed 's/^0x/0x0/')
0x07600006 0 19051 maythuxPC Gnome Terminal
0x07600006は、私の場合の端末であるアクティブウィンドウの16進数です。
確実に10進数で取得しましょう:
$ xdotool getactivewindow
123731974
次に、10進数から16進数に変換します。
$ printf 0x%x 123731974
0x7600006
それは同じだ。
ウィンドウのフォーカスを変更するための3秒の時間を与え、
その後、16進数のPIDを印刷します。
~$ sleep 3; printf 0x%x $(xdotool getactivewindow getwindowpid)