Как выполнить сценарий на основе вывода команды

Чтобы воспроизвести эту проблему, нам нужно знать, что делает xdg-screensaver.

Получение идентификатора корневого окна

  1. Обновите xdg-screensaverеще раз.
  2. Открыть терминал
  3. Выполнитьxwininfo -root
  4. Скопируйте идентификатор окна,в данном случае это0x131

    xwininfo: Window id: 0x131 (the root window) (has no name)
    

Отключение хранителя экрана

Теперь запустите

    xdg-screensaver suspend <window id>

Вы можете подтвердить, что сработало, запустивxdg-screensaver status

Ренабл

Для повторного запуска

    xdg-screensaver resume <window id>

Вы можете убедиться, что сработало, запустивxdg-screensaver status

Экранная заставка пуста/затенена, когда выsuspend(отключили )экранную заставку? Если да, то это ошибка xdg-screensaver.

Другие примечания

Если вы когда-нибудь захотите выключить DPMS, хотя я бы никогда не делал этого --, если только монитор не смог восстановить что-то неустойчивое с аппаратным обеспечением --, вы можете просто запустить

xset -dpms;

Это предотвратит гашение при -отключении питания. Вообще говоря, вы не хотите отключать гашение (, очищать экран )или отключать управление питанием. Вы хотите выяснить, что заставляет его гаснуть или выключаться, когда вы этого не хотите, и вы хотите это исправить.

1
01.04.2020, 22:23
1 ответ
#assign output of a command to a variable
output="$(command)"

#test variable to see if empty
if [ -z "$output" ]
then
   #do something
   a_command
fi
2
28.04.2021, 23:22

Теги

Похожие вопросы