如何在 Ubuntu 13.04 中将自定义键盘快捷键链接到 bash 脚本?

mar*_* go 9 bash scripts shortcut-keys brightness 13.04

作为 Ubuntu 13.04 用户,我自己也遇到了与这个最新版本的 Ubuntu 不兼容的各种问题。其中之一是在我安装了一些软件包(我真的不记得它是什么)后,亮度栏突然从“系统设置 --> 亮度和锁定”选项卡中消失了。我发现一种解决方法是使用xbacklight

作为自己的练习,我写了一个简短的脚本,以便使用终端的 xbacklight 轻松增加和减少亮度。该脚本是可执行的(具有执行权限),是一个包含在我的 .bashrc 文件中的 $PATH 中的目录,并链接到一个别名('blup' 增加屏幕亮度,'bldn' 减少屏幕亮度)。所以,我的两个别名(blup/bldn)在终端线上工作得很好。接下来,我想将这些链接到一些键盘快捷键(例如 F2/F3)。我在“系统设置--> 键盘--> 快捷方式--> 自定义快捷方式”中这样做了,但没有用。

在此处输入图片说明

为什么?

此外,有没有办法“发现”其他(非自定义)键盘快捷键命令的执行位置和方式?例如,音量增大快捷方式它执行什么终端线,连接到什么别名(如果有)以及它们放在什么目录(/usr/bin,别的东西...)?

作为脚本编写的新手,我将不胜感激!

谢谢

PS1 当然,只需将命令“xbacklight -inc/-dec 10”粘贴到自定义键盘快捷键即可,它会正常工作。我只是想抓住机会,多了解一些脚本编写和执行的知识。

PS2 我的问题与此不同:如何使用键盘快捷键启动 bash 脚本?,即,我没有使用 '~/' 作为 '/home/user/'。

Rad*_*anu 5

首先,别名不会在非交互式 shell 中扩展。ALIASESman bash这个意义上阅读该部分。因此,当您添加/编辑自定义快捷方式时,您不能在“命令”字段中使用别名。

其次,正如geirha此评论中所说,如果您PATH.bashrc文件中进行了更改,则该更改在非交互式 shell 中将不可用。因此,您需要更改PATHin~/.profile文件。

第三,如果你仍然想只使用bldn,当你添加/编辑自定义快捷方式“命令”字段,你可以用这个名字命名你的脚本和脚本路径添加到PATH~/.profile文件,正如我上面所说。