我有一個腳本啓動多個gvim窗口。我想以某種方式定位它們。 wmctrl
可以做到這一點,但由於有多個實例,窗口名稱是不明確的。我想:使用pid。
gvim /tmp/xxx &
X=$!
wmctrl -lp | grep $X
echo $X
wmctrl -lp | grep GVIM
echo sleeping
sleep 3
wmctrl -lp | grep GVIM
輸出是:
5211
sleeping
0x03400062 0 5218 localhost xxx (/tmp) - GVIM
看來GVIM開始時用PID 5211,但推出的實際窗口的新進程。而且,這個過程還不存在。
我該如何明確地獲取剛啓動的gvim實例的wmctrl窗口句柄?還是應該使用別的東西?
--echo-wid
選項看起來不錯,但我使用的是KDE。
您需要以前景模式('-f')啓動gvim。再看看'--echo-wid'選項。 – 2013-05-07 09:41:53
第一種情況是'GVIM',第二種是'GVIM1'等等。 – romainl 2013-05-07 19:59:54
可能有實例已在運行。我不想依賴這樣的字符串,它總能起作用的證據在哪裏? – spraff 2013-05-08 01:10:29