如此处所述 (askubuntu.com/questions/234206/shortcut-to-switch-to-app/328842),它wmctrl
允许您访问您的窗口。因此您可以通过键盘切换。但我喜欢有一个快捷方式来打开并聚焦(如果它尚未打开)。
有这样的工具吗?
答案1
还有另一种解决方案。
确保已安装 wmctrl:sudo apt install wmctrl
使用以下命令创建快捷方式:bash -c "wmctrl -a chrome ; [ "$?" == "1" ] && google-chrome"
解释:首先我们尝试关注 chrome ( wmctrl -vxa chrome
),接下来我们验证“$?” == “0” 是否成功,或者“$?” == “1” 是否不成功,如果不成功,则启动 google chrome ( [ "$?" == "1" ] && google-chrome"
)。
你也可以创建快捷方式bash -c "wmctrl -a chrome || google-chrome"
||
意思是如果第一个命令失败,则执行第二个命令。
答案2
我直接将以下内容作为键盘快捷键:
# Focus Chrome if it's running, start it otherwise.
sh -c "if test $(wmctrl -vxa chrome 2>&1 | wc -l) -eq 1; then google-chrome; fi"
答案3
尝试这些说明(已测试):
- 首先得到消息类型应用程序名称
xprop | grep WM_CLASS
- 然后创建快捷方式
bash -c "wmctrl -xa <WM_CLASS> || <WM_CLASS>"
- 例如:
bash -c "wmctrl -xa google-chrome || google-chrome
答案4
差不多明白了。
使用以下行创建/usr/local/bin/go
( ):sudo vim /usr/local/bin/go
#!/bin/bash
if wmctrl -l | grep -i --quiet "${1}"; then
wmctrl -a ${1}
else
${1}
fi
使其可执行:sudo chmod ugo+x /usr/local/bin/go
并增加一些系统的快捷方式:
名称:Firefox
命令:go firefox
通过 Super+F
但 Firefox 没有显示。通过控制台,它表现正常。