Я управляю своим ПК с SSH и сценариями. Как я могу изменить яркость, цвет и резкость из командной строки?
Попробуйте 1: неудавшийся
$ sudo redshift -t 5000:5000 -g .5
Cannot list GNOME panel applets.
Initialization of gnome-clock failed.
Trying next provider...
Latitude and longitude must be set.
Попробуйте 2: неудавшийся
$ cat brightness
20
$ cat max_brightness
20
$ echo 1 | sudo tee /sys/class/backlight/acpi_video0/brightness
1
$ echo 20 | sudo tee /sys/class/backlight/acpi_video0/brightness
Какой-либо альтернативный способ сделать?
Продолжите: http://jonls.dk/redshift/
[command] [1000K to 10000K] [effects 0.1 to 10.0]
| | / / /
^ ^ ^ ^ ^
redshift -t 1000:1000 -l 0:0 -g .1; Dark
redshift -t 1000:1000 -l 0.0 -g 5; Bright
Для ноутбуков я только что узнал из man xrandr
:
--brightness brightness
Multiply the gamma values on the crtc currently attached to the
output to specified floating value. Useful for overly bright or
overly dim outputs. However, this is a software only modifica‐
tion, if your hardware has support to actually change the
brightness, you will probably prefer to use xbacklight.
Итак, я попробовал
xbacklight -get
xbacklight -set 70
, и это работает!
Если драйвер вашей видеокарты поддерживает его, вы можете использовать xrandr
.
Следующая команда перечисляет текущую конфигурацию:
xrandr --current --verbose
Если вы хотите изменить конфигурацию выхода, вам нужно имя выхода. Это имя является частью результата xrandr --current
, например LVDS1
.
Яркость можно изменить следующим образом:
xrandr --output <outputname> --brightness 0.8
Гамма:
xrandr --output <outputname> --gamma 0.5:1.0:1.0
xrandr не будет увеличивать яркость экрана на аппаратном уровне (тот, который изменяется клавишами яркости дисплея ноутбука). Как сказано в руководстве xrandr:
- яркость яркость
Умножьте значения гаммы на контрольной панели, которые в данный момент подключены к выходу, до указанного плавающего значения. Полезно для слишком ярких или слишком тусклых выходов. Однако это только программная модификация, если ваше оборудование имеет поддержку для изменения яркости, вы, вероятно, предпочтете использовать xbacklight.
blockquote>Вместо этого используйте
xbacklight
для изменения яркости:xbacklight -get #get the current level xbacklight -set *percent* #set brightness to a given percentage xbacklight -inc *percent* #increase by a given percentage xbacklight -dec *percent* #decrease by a given percentage
Однако, поскольку это то же самое, что и использование клавиш яркости ноутбука, это не может выходить за пределы 0-100 %. Если вы хотите сделать свой экран ярче / темнее, чем этот предел, вы можете использовать xrandr для принудительной установки программных уровней яркости:
xrandr --output LVDS1 --brightness 0.5
Обратите внимание, что
xrandr
принимает дроби (0,0-1,0), аxbacklight
принимает проценты (0-100)
Если вы используете красное смещение, вам нужно указать его широту и долготу, чтобы знать, когда меняется время суток. Нечто подобное
redshift -t 5000:5000 -l 55.7:12.6 -g .5
Хотя это может быть немного нетрадиционное использование красного смещения :))
Кроме того, он прекрасно работает без sudo.
Измените VGA-1 на вашем устройстве
xrandr --listmonitors
Monitors: 1
0: + * VGA-1 1366 / 410x768 / 230 + 0 + 0 VGA-1
xrandr --output VGA-1 --brightness 1 (for 100% brightness)
xrandr --output VGA-1 --brightness 1.5 (for 150% brightness)
xrandr --output VGA-1 --brightness 2 (for 200% or double brightness)
xrandr --output VGA-1 --brightness 4 (for 400% brightness)
Осторожнее с 0 (вам нужно перезапустить Xorg):
xrandr --output VGA-1 --brightness 0 (for Blank Screen)
xrandr --output VGA-1 --brightness 0.8 (for 80% brightness)
Это работает на обычных ЖК-мониторах, так как они не поддерживают аппаратную яркость, как у ноутбуков.
Также есть DDC / CI и клиент linux: ddccontrol (и gddccontrol для GUI).
Tt в официальном хранилище Ubuntu:
sudo apt install ddccontrol ddccontrol-db gddccontrol
Я использую этот скрипт, чтобы установить яркость на всех моих дисплеях одновременно:
#!/bin/bash
if [ -z $1 ]; then
echo "Usage: brighntess BRIGHTNESS"
echo "BRIGHTNESS is a float (0.0-1.0)"
else
xrandr --listmonitors | grep "^ " | cut -f 6 -d' ' | \
xargs --replace=MONITOR xrandr --output MONITOR --brightness $1
fi