Коротка відповідь:
xrandr --output DVI-I-1 --brightness 0
де DVI-I-1
назва вашого екрана
Навпаки:
xrandr --output DVI-I-1 --brightness 1
щоб знову встановити нормальну яскравість.
Щоб отримати ім’я екрана
Просто запустіть команду:
xrandr
У висновку ви знайдете ім'я екрана, у рядку, у тому числі connected
Невеликий сценарій, щоб або затемнити екран, або повернути його до нормального
Сценарій можна використовувати для встановлення (всіх) підключених екранів до чорного та навпаки. Сценарій автоматично знаходить ваші екрани.
#!/usr/bin/env python3
import subprocess
import sys
arg = sys.argv[1]
screens = [l.split()[0] for l in subprocess.check_output("xrandr").decode("utf-8").splitlines()
if " connected" in l]
val = "0" if arg == "black" else "1"
for s in screens:
subprocess.Popen(["xrandr", "--output", s, "--brightness", val])
Бігти
- Скопіюйте скрипт у порожній файл, збережіть його як
set_black.py
Запустити його або за допомогою:
python3 /path/to/set_black.py black
щоб затемнити екран, або
python3 /path/to/set_black.py normal
щоб знову встановити яскравість.
Хоча відповідь вище повинен працювати нормально на всіх дистрибутивах Ubuntu локально , питання виявляється на ssh / remote (інформація була відредагована у запитання).
У випадку віддаленої ситуації нам потрібно буде $DISPLAY
правильно встановити змінну. Якщо змінна відображення, наприклад :0
, нам буде потрібно запустити сценарій з:
DISPLAY=:0 python3 /path/to/script.py black
Змінна не обов'язково, :0
хоча. Ця публікація на U&L здається чудовою, яка встановлює DISPLAY
змінну на віддаленій машині.