Để điều chỉnh đèn nền của tôi, tôi đang sử dụng lệnh:
sudo bash -c "echo $backlight_value > /sys/class/backlight/apple_backlight/brightness;"
Bây giờ tôi muốn thiết lập một keybinding cho lệnh ở trên thông qua shell script với openbox để điều chỉnh đèn nền trong PC của tôi. Để thiết lập keybinding tôi đã tìm kiếm tệp cấu hình được sử dụng bởi 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
Tiếp theo, tôi đã chỉnh sửa tệp cấu hình Lubfox-RC.xml và nó hoạt động (Tôi đã kiểm tra nó):
<!-- My Keybindings -->
<keybind key="0xC0">
<action name="Execute">
<execute>lxterminal</execute>
</action>
</keybind>
Bây giờ tôi muốn thực thi kịch bản shell tùy chỉnh của mình bên dưới. Nhưng trong kịch bản shell của tôi có hai lệnh (dòng 2 và 5) cần có quyền bổ sung. Làm thế nào tôi có thể chạy chúng như 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
Tôi cũng đã thay đổi đặc quyền nhưng lỗi vẫn còn đó (quyền bị từ chối):
ls -l /sys/class/backlight/apple_backlight/
total 0
-rwxrwxr-x 1 ubuntu ubuntu 4096 Nov 4 00:41 brightness
Tôi chỉ thử nghiệm tập lệnh mà không ràng buộc và nó hoạt động:
bash /home/ubuntu/Documents/CustomScripts/brightnessDown.sh