5
比方說,我跑:開始在Python的過程和檢索它的窗口ID
import subprocess;
P = subprocess.Popen(['gnome-terminal');
我再拿到類Popen
的對象P
:
<subprocess.Popen object at 0xb72a9d0c>
我怎樣才能然後檢索window identity
這個子進程的?
最後,我想操縱利用wmctrl子進程催生了窗口的幾何特性,但爲了這個,我需要的東西稱爲窗口的windows identity
(見wmctrl文檔)
提供更多上下文,wmctrl -l
輸出在GNOME桌面上運行的窗口列表,其中第一列顯示每個窗口的window identity
。這是一個十六進制數字,我注意到不同於與上面Popen報告的輸出中包含的數字不同。
我檢查了Popen documentation,但我不知道如何從這一點開始。
有什麼想法?謝謝!
'wmctrl -lp'返回一個窗口列表及其'PIDs',但其中幾個窗口(終端,如上例所示)列在相同的'PID'下。 如何判斷哪一個是哪個? 「Popen」對象是否擁有任何其他標識符,這些標識符可以讓我明確地識別這個過程? – 2011-04-05 21:29:29
@AmV:如果gnome-terminal在同一個PID下運行其所有實例,則可能根本無法使用此方法。命令行列是否有用? – nmichaels 2011-04-05 21:56:53