Проблема з наявною відповіддю
Хоча відповідь було проведено сім років тому з трьома голосами, її не було прийнято, оскільки це призводить до того, що всі відкриті вікна на екрані вимкнення переходять на інші активні дисплеї.
Яскравість на основі програмного забезпечення
На ноутбуці ви можете керувати яскравістю за допомогою відеокарти, що управляє РК-панеллю. Для зовнішніх телевізорів та моніторів вам потрібне програмне рішення для зменшення яскравості до 0. Найближче повернення його до нуля Я прийшов до ілюзії вимкнути його, зберігаючи активні вікна на цьому зовнішньому дисплеї.
Коротка версія
У командному рядку (без скриптів) використовуйте:
$ xrandr | grep " connected"
HDMI-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 1107mm x 623mm
eDP-1-1 connected primary 1920x1080+3840+2160 (normal left inverted right x axis y axis) 382mm x 215mm
DP-1-1 connected 3840x2160+1920+0 (normal left inverted right x axis y axis) 1600mm x 900mm
Тут відображається список імен монітора, призначених користувачем xrandr
. Тепер, якщо ви хочете DP-1-1
вимкнути яскравість, використовуйте:
xrandr --output DP-1-1 --brightness 0
Базовий сценарій Sony TV
Ось один із трьох написаних сценаріїв:
#!/bin/bash
# NAME: sony
# PATH: /mnt/e/bin
# DESC: Set brightness of Sony TV
# DATE: Dec 9, 2017.
if [[ $# -ne 1 ]]; then
xrandr --verbose | grep -A5 "^HDMI-0" > /tmp/sony
head -n1 /tmp/sony
echo "$(tput setaf 1)" ; tail -n1 /tmp/sony ; echo "$(tput sgr0)"
rm /tmp/sony
echo 'One argument required for brightness level, e.g. "sony .63"'
echo 'will set brightness level of Sony TV to level .63 using xrandr'
exit 1
fi
xrandr --output HDMI-0 --brightness "$1"
Щоб вимкнути дисплей, який ви б використовували sony 0
Сценарій виклику без параметрів
Коли ви викликаєте сценарій без параметрів, він відображає назву xrandr
екрана разом із поточною яскравістю червоного кольору. Ви можете змінити червоний колір на інший, змінивши цю лінію:
echo "$(tput setaf 1)" ; tail -n1 /tmp/sony ; echo "$(tput sgr0)"
Після setaf
зміни 1
на:
2
для зеленого
3
для апельсина
4
для синього тощо.
Модифікація та встановлення сценарію
Змініть два випадки, HDMI-0
щоб вони відповідали вашому екранного імені. Ви можете отримати список усіх ваших екранів, що набираються xrandr
в терміналі.
Розташуйте скрипт у каталозі свого шляху, наприклад:
/usr/local/bin/sony
Позначте сценарій як виконуваний, використовуючи:
sudo chmod a+x /usr/local/bin/sony
Вибір каталогу: /usr/local/bin
vs~/bin
Під час створення сценаріїв /usr/local/bin
ви повинні використовувати sudo
повноваження. Кращою альтернативою є використання каталогу, ~/bin
який є скороченим для /home/YourUserID/bin
:
- створити каталог
~/bin
- закрийте термінал і знову відкрийте його.
- новостворений каталог зараз на вашому шляху.
- всі сценарії, в яких ви створюєте,
~/bin
можна створити за допомогою звичайних дозволів.
- щоб увімкнути виконання ваших сценаріїв, вам просто потрібно скористатися,
chmod +x
а не chmod a+x
( a
тобто всі користувачі)