GNOME3 键盘快捷键无法运行我的脚本

GNOME3 键盘快捷键无法运行我的脚本

我有一个自制的脚本,可以截取屏幕截图并将其上传到 puush,我已将脚本放在 /usr/bin 中。如果我打开终端并输入脚本的名称,它就会完美运行。我使用 Debian Unstable(Sid) 和 Gnome3。

我想要做的是将脚本放在键盘快捷键上,或者至少在不打开终端的情况下运行它。我尝试使用 Alt+F2 打开命令提示符,但出于某种原因,即使我尝试以这种方式调用它,我的脚本也无法运行。如果我将脚本放在键盘快捷键上,情况也是如此。
我还查看了文件的权限,每个人都可以读取或运行该脚本,并且它归 root 所有并属于 root 组,就像其他程序一样。

脚本链接

目标是使用键盘快捷键运行自制脚本,如果键盘快捷键不起作用,则使用命令提示符作为辅助选项。但我不知道该怎么做。

迄今已测试的内容:
使用完整路径运行脚本。
打开 gnome-terminal 并将脚本作为参数传递“gnome-terminal -e script”,
在脚本开头添加 #!/bin/bash

答案1

Alt+F2 打开的命令提示符不一定$PATH与在终端中执行的登录 shell 相同。

你可以通过以下方式看到$PATH它的价值gnome-shell

strings /proc/`pidof gnome-shell`/environ | grep PATH

如果/usr/bin不在该列表中,则需要修改~/.profile以包含/usr/bin在 $PATH 中:

PATH="/usr/bin:$PATH"

另一个问题是 Alt+F2 无法启动bash或其他 shell。解决这个问题的方法是使用 Alt+F2 通过它启动gnome-terminal并运行脚本。因此,按下 Alt+F2 后,输入

gnome-terminal -e my-script.sh

这会产生不良的副作用,即弹出一个gnome-terminal窗口,该窗口将在执行脚本后关闭。

听起来你可能更适合瓜克,只需按一下按钮即可调出完整的终端(截图)。

答案2

问题解决了。显然我在 #!/bin/bash 上缩进了,我删除了它以确保 # 之前没有空格、换行符或类似的东西。脚本现在从 Alt+F2 运行,也可以从键盘快捷键运行,尽管响应时间有点差,而且不是每次我点击时都运行。

感谢@FSMaxB 让我了解有关此事的更多细节,也感谢 tbekolay 提供的一些实用建议。

相关内容