要调整背光,我使用以下命令:
sudo bash -c "echo $backlight_value > /sys/class/backlight/apple_backlight/brightness;"
现在我想通过 openbox 的 shell 脚本为上述命令设置一个键绑定,以调整我的电脑的背光。为了设置键绑定,我搜索了 openbox 使用的配置文件:
$ ps ax | grep openbox
1194 ? Sl 0:02 openbox --config-file /home/ubuntu/.config/openbox/lubuntu-rc.xml --sm-save-file /home/ubuntu/.cache/openbox/sessions/1478226066-1194-624962777.obs --sm-no-load
1958 pts/0 S+ 0:00 grep --color=auto openbox
接下来我编辑了配置文件 lubuntu-rc.xml 并且它可以工作(我测试过了):
<!-- My Keybindings -->
<keybind key="0xC0">
<action name="Execute">
<execute>lxterminal</execute>
</action>
</keybind>
现在我想执行下面的自定义 shell 脚本。但是在我的 shell 脚本中有两个命令(第 2 行和第 5 行)需要额外的权限。我该如何以 root 身份运行它们?
#!/bin/bash
curr=`cat /sys/class/backlight/apple_backlight/brightness`
if [ $curr -gt 0 ]; then
curr=$((curr - 1));
echo $curr > /sys/class/backlight/apple_backlight/brightness;
fi
我也更改了权限,但错误仍然存在(权限被拒绝):
ls -l /sys/class/backlight/apple_backlight/
total 0
-rwxrwxr-x 1 ubuntu ubuntu 4096 Nov 4 00:41 brightness
我只测试了没有绑定的脚本并且它可以工作:
bash /home/ubuntu/Documents/CustomScripts/brightnessDown.sh
答案1
我必须为这两个脚本设置执行位:
-rw**x**r-**x**r-- 1 ubuntu ubuntu 189 Nov 4 15:34 brightnessDown.sh
-rw**x**r-**x**r-- 1 ubuntu ubuntu 191 Nov 4 15:36 brightnessUp.sh
所以我输入了:
sudo chmod 754 ~/Documents/CustomScripts/brightness*.sh
现在我可以通过键盘快捷键运行这两个脚本。