+#!/bin/sh
+set -e
+cd $(dirname "$0")
+. lib/abort
+. lib/print_usage
+
+ARG_HELP=--help
+USAGE_DESCRIPTION='Set backlight to maximum, or [INTEGER] percentage of it.'
+USAGE_LINES="COMMAND [${ARG_HELP}] [INTEGER]"
+
+if [ "$1" = "${ARG_HELP}" ]; then
+ print_usage
+ exit 0
+elif [ -z "$1" ]; then
+ PERCENTAGE=100
+elif [ "$(echo -n $1 | sed -E 's/[0-9]*[%]?//g')" ]; then
+ echo "Aborting due to unrecognized argument(s): $@" >&2
+ exit 1
+elif [ "$1" -gt 100 ]; then
+ echo "Aborting due to percentage > 100" >&2
+ exit 1
+else
+ PERCENTAGE=$1
+fi
+PATH_BACKLIGHTS=/sys/class/backlight
+FILENAME_MAX=max_brightness
+FILENAME_TARGET=brightness
+BACKLIGHTS=$(ls "${PATH_BACKLIGHTS}")
+for BACKLIGHT in ${BACKLIGHTS}; do
+ PATH_DIR_BACKLIGHT=${PATH_BACKLIGHTS}/${BACKLIGHT}
+ MAX_BRIGHTNESS=$(cat "${PATH_DIR_BACKLIGHT}/${FILENAME_MAX}")
+ TARGET_VAL=$(calc "(${PERCENTAGE} * ${MAX_BRIGHTNESS} // 100)" | tr -d '\t')
+ sudo sh -c "echo ${TARGET_VAL} > ${PATH_DIR_BACKLIGHT}/${FILENAME_TARGET}"
+ printf 'set %s to %s%s (%s)\n' "${BACKLIGHT}" "${PERCENTAGE}" "%" "${TARGET_VAL}"
+done