Implement monitor-brightness script
[khome.git] / home / bin / monitor-brightness
1 #! /bin/bash
2
3 error() {
4 printf 'Error: %s\n' "$1" >&2
5 exit 1
6 }
7
8 _get() {
9 sudo ddcutil getvcp 10 | grep -o ' current value = \+[0-9]\+' | awk '{print $4}'
10 }
11
12 _set() {
13 sudo ddcutil setvcp 10 "$1"
14 }
15
16 cmd="$1"
17 arg="$2"
18
19 case "$cmd" in
20 '') _get;;
21 get) _get;;
22 set)
23 case "$arg" in
24 '') error 'expected a numeric argument between 0 and 100, given nothing!';;
25 *)
26 if [[ "$arg" =~ ^[0-9]+$ && "$arg" -gt -1 && "$arg" -lt 101 ]]; then
27 _set "$arg"
28 else
29 error "expected a numeric argument between 0 and 100, but given '$arg'"
30 fi
31 esac;;
32 *) error "unrecognized command: $cmd. Expect either get or set."
33 esac
This page took 0.074169 seconds and 4 git commands to generate.