2
在bash终端上,我可以发出“Ctrl-Shift-T”来打开一个新的终端窗口。我该如何从我在bash终端上运行的python脚本来完成这项工作?通过Python打开新的bash选项卡窗口
在bash终端上,我可以发出“Ctrl-Shift-T”来打开一个新的终端窗口。我该如何从我在bash终端上运行的python脚本来完成这项工作?通过Python打开新的bash选项卡窗口
Ctrl-Shift-T与bash绝对无关,但是您正在使用的终端模拟器!
如果你想打开一个新的窗口,你只需要使用子模块和执行终端命令(GNOME终端,xterm的等)
但在我的经验,按Ctrl-Shift-T键打开,而不是一个新的窗口,但在当前窗口中显示一个新选项卡。这有点棘手。但是here is a sample如何在bash脚本中做到这一点。然而,这看起来像是可以在本地机器上运行的东西。但它并没有给我好感。有没有另外一种方法可以完成你的任务,并且在其他机器上更安全?在那种情况下,我会推荐它。
我重写了我作为Python脚本链接到的bash脚本。只要确保你已经安装了xprop,xdotool和wmctrl工具。
import subprocess
wid = None
xprop_out = subprocess.check_output(['xprop', '-root'])
for line in xprop_out.splitlines():
if '_NET_ACTIVE_WINDOW(WINDOW)' in line:
wid = line.split()[-1]
if wid:
subprocess.check_call(['xdotool', 'windowfocus', wid])
subprocess.check_call(['xdotool', 'key', 'ctrl+shift+t'])
subprocess.check_call(['wmctrl', '-i', '-a', wid])
else:
print 'Failed to find window ID'
'subprocess' module? – J0HN 2013-02-20 10:57:59