Могу ли я обнаружить наличие второго дисплея в скрипте оболочки или конфиге?


3

Я хочу изменить свое удобное расположение в зависимости от того, работаю ли я с ноутбуком на коленях (один экран) или у меня на столе, к которому подключен больший монитор (двойной дисплей).

Проблема в том, что я хочу, чтобы он отображался в левом нижнем углу экрана моего ноутбука, несмотря ни на что. Но с моей двойной настройкой дисплея, «левый нижний» находится на моем внешнем мониторе.

Кажется, что есть два решения:

  • Добавьте оператор if / else в скрипт, который я использую для запуска conky (conky.sh), который запускает другой файл конфигурации в зависимости от моего расположения отображения.

  • Добавьте оператор if / else в мою конфигурацию conky, которая устанавливает либо выравнивание, либо значение отступа в зависимости от расположения дисплея.

(И да, я понимаю, что, по крайней мере, версия оболочки работает только в том случае, если у меня есть что-то подключенное / отключенное при запуске conky. Я могу с этим смириться.

Но ... я даже не знаю, как обнаружить двойной дисплей или второй монитор в bash или conky.


Вы когда-нибудь работали? Если да, можете ли вы поделиться своим conky config?
crypdick

Ответы:


3

Приведенное выше предложение Натана даст тот же результат при любых обстоятельствах, что и xrandrкоманда дает информацию обо всех выходах дисплея ( подключенных / отключенных ).

Этот код будет работать:

$ xrandr | grep -sw 'connected' | wc -l

Примечание: не моя идея. Я просто слил предложение Натана и это .


В этом случае вам не нужен -sфлаг (или одинарные кавычки).
Энтони Геогеган,

1

Вы можете использовать xrandr и grep для обнаружения подключенных мониторов. Затем используйте wc -lдля подсчета количества возвращенных строк.

Попробуйте это в терминале:

xrandr | grep connected | wc -l
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.