我希望能够有一个键盘快捷方式来启动或将程序置于前面。(如果重要,sqldeveloper)
我知道如何运行它,留下:
1)如何确定程序是否已经在运行?
2)如何将程序带到其他打开的窗口的其他顶部?
~~编辑~~
感谢您到目前为止的回复。当我运行其中任何一个命令来获取正在运行的进程列表时,我得到以下信息:
doneill 3492 1 0 Nov16 ? 00:00:00 /bin/sh /usr/local/bin/sqldeveloper
doneill 3493 3492 0 Nov16 ? 00:00:00 /bin/bash /opt/sqldeveloper/sqldeveloper.sh
doneill 3495 3493 0 Nov16 ? 00:00:00 bash sqldeveloper
doneill 3552 3495 1 Nov16 ? 00:25:07 /usr/lib/jvm/java-6-sun-1.6.0.22/bin/java -Xmx640M -Xms128M -Xverify:none -Doracle.ide.util.AddinPolicyUtils.OVERRIDE_FLAG=true -Dsun.java2d.ddoffscreen=false -Dwindows.shell.font.languages= -XX:MaxPermSize=128M -Dide.AssertTracingDisabled=true -Doracle.ide.util.AddinPolicyUtils.OVERRIDE_FLAG=true -Djava.util.logging.config.file=logging.conf -Dsqldev.debug=false -Dide.conf="/opt/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf" -Dide.startingcwd="/opt/sqldeveloper/sqldeveloper/bin" -classpath ../../ide/lib/ide-boot.jar oracle.ide.boot.Launcher
我确实通过 .sh 脚本启动它。它是一个基于java的程序。其中哪一个是我感兴趣的?我尝试使用xdotool
来提高它,但我还没有成功,尽管我今晚没有时间深入研究手册页。
如果我运行xdotool search Orac
('Oracle SQL Developer' 是窗口标题的开始),它会返回一堆数字。其中之一是否代表我感兴趣的内容?
一点 bash 和xdotool应该可以解决问题。在帖子末尾安装 xdotool 的注意事项。
激活或启动.sh
你可以在github上找到代码
我在 Ubuntu 10.10 (Gnome) 上测试了代码,它工作正常。它需要一些润色,因为我只是把它打了出来,并不担心让它漂亮(想确保得到评论)
要安装 xdotool 你可以apt-get install xdotool(给我这个获取的版本 2.20100701.2691),如果你想要最新最好的从这里获取它(截至 20101116 它是版本 2.20101012.3049-4)
在您的主目录中创建一个名为 sql-raise.sh 的文件
开始的行
if ps -ef...
转换为:process-name
grep
命令本身,防止误报起始行
xdotool
是将过程带到最前面的行。在命令行上执行
chmod +x ~/sql-raise.sh
以使文件可执行。要将其绑定到键,请使用系统 -> 首选项 -> 键盘快捷键
'launchorsitch.sh firefox' 如果 firefox 没有运行,则启动它,如果它不处于活动状态,则切换到它;如果它是活动窗口,则将其最小化。
一开始有程序的特殊规则(这里是终止符)。我的 hack 使用 wmctrl 并允许为要查找/运行的可执行文件指定特殊规则。欢迎对风格、明显错误等提出任何意见。