我知道我可以在 Windows(至少是 7 和 XP)中创建自定义键盘快捷键,方法是创建一个程序的新快捷方式,导航到文件快捷方式上的“属性”,然后设置“快捷键”字段。然而,奇怪的是,当调用此键盘快捷键时,它并不总是会生成该程序的新实例。相反,如果尚未生成程序实例,它将生成一个新实例;如果已经生成程序实例,则它将聚焦该窗口。
如何创建 Windows 键盘快捷键来生成链接程序的新实例,而不管是否已经存在链接程序的正在运行的实例?
答案1
答案2
我知道这是一个非常老的问题,但我遇到了类似的问题并找到了一个不需要第三方应用程序的解决方案。
在 Windows 7/8 中,您可以通过按 Windows+[数字] 快速切换到应用程序,其中数字是应用程序在任务栏上的位置。您还可以使用右键单击上下文菜单将应用程序固定到任务栏。最后,您可以通过按 Windows+Shift+[数字] 在任务栏上启动应用程序的新实例。当我想启动 cygwin 的新实例时,这对我来说非常有效,我通常有 3 个以上的窗口和多个监视器;我将 cygwin 固定在任务栏上,因此 [数字] 不会改变,我可以使用 Windows 键快速启动新实例并在当前正在运行的实例之间轻松切换。
希望这对每个人都有帮助!
答案3
有一个直接的解决方案,不需要任何辅助程序 - 只需使用这个快捷目标:
%comspec% /c start notepad
如果实际目标的路径带有空格,则语法变为
%comspec% /c start "" "C:\Program Files (x86)\Foo\bar.exe"
配置快捷方式以最小化运行,以避免控制台窗口闪烁。
答案4
我的 Cygwin 键盘快捷键也遇到了同样的问题,经过一番研究,我发现了这个 lifehacker文章:
快捷键的工作方式取决于快捷方式的位置。如果快捷方式位于桌面或“开始”菜单层次结构中,则可以使用其快捷键启动指定的程序,或者如果程序已在运行,则切换到该程序。
如果快捷方式不在桌面上或不在“开始”菜单层次结构中,则您无法使用其快捷键来启动指定的程序,但如果该程序已在运行,则可以使用它的快捷键切换到指定的程序。
我注意到,默认情况下运行 Cygwin.bat 会在 Windows 命令提示符内启动一个 bash 登录 shell,这不是我想要的。我想要的是运行 bash 登录 shell 的 mintty 实例。我发现这真正有用的文档,帮助我解决了快捷方式难题。