Openbox thực thi keybind


2

Để đ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

Câu trả lời:


1

Tôi đã phải thiết lập bit thực thi cho cả hai tập lệnh:

-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

Vì vậy, tôi đã nhập:

sudo chmod 754 ~/Documents/CustomScripts/brightness*.sh

Bây giờ tôi có thể chạy cả hai tập lệnh thông qua các phím tắt.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.