Команда, чтобы определить, работает ли полноэкранное приложение?

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

проблема в том, что этот скрипт может быть вызван в любое время, в том числе, когда я смотрю DVD / видео в полноэкранном режиме со звуком оказался совсем немного - что очень раздражает.

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

какие команды я могу использовать?

5
задан 21 March 2011 в 01:25

10 ответов

Вид экстремального переполнения как сценария оболочки, но он должен сделать трюк:

#!/bin/bash
WINDOW=$(echo $(xwininfo -id $(xdotool getactivewindow) -stats | \
                egrep '(Width|Height):' | \
                awk '{print $NF}') | \
         sed -e 's/ /x/')
SCREEN=$(xdpyinfo | grep -m1 dimensions | awk '{print $2}')
if [ "$WINDOW" = "$SCREEN" ]; then
    exit 0
else
    exit 1
fi

Затем вы можете проверить его:

if is-full-screen ; then echo yup, full screen ; fi

Как указано ниже, вам нужно сначала установить xdotool:

sudo apt-get install xdotool
5
ответ дан 25 May 2018 в 22:34
  • 1
    Wow ... +1 для такого подробного сценария. Одно замечание: xdotool - отдельный пакет, который по умолчанию не установлен. – Nathan Osman 15 March 2011 в 07:18

Вид экстремального переполнения как сценария оболочки, но он должен сделать трюк:

#!/bin/bash WINDOW=$(echo $(xwininfo -id $(xdotool getactivewindow) -stats | \ egrep '(Width|Height):' | \ awk '{print $NF}') | \ sed -e 's/ /x/') SCREEN=$(xdpyinfo | grep -m1 dimensions | awk '{print $2}') if [ "$WINDOW" = "$SCREEN" ]; then exit 0 else exit 1 fi

Затем вы можете проверить его:

if is-full-screen ; then echo yup, full screen ; fi

Как указано ниже, вам нужно сначала установить xdotool:

sudo apt-get install xdotool
5
ответ дан 25 July 2018 в 22:21

Вид экстремального переполнения как сценария оболочки, но он должен сделать трюк:

#!/bin/bash WINDOW=$(echo $(xwininfo -id $(xdotool getactivewindow) -stats | \ egrep '(Width|Height):' | \ awk '{print $NF}') | \ sed -e 's/ /x/') SCREEN=$(xdpyinfo | grep -m1 dimensions | awk '{print $2}') if [ "$WINDOW" = "$SCREEN" ]; then exit 0 else exit 1 fi

Затем вы можете проверить его:

if is-full-screen ; then echo yup, full screen ; fi

Как указано ниже, вам нужно сначала установить xdotool:

sudo apt-get install xdotool
5
ответ дан 26 July 2018 в 20:55

Вид экстремального переполнения как сценария оболочки, но он должен сделать трюк:

#!/bin/bash WINDOW=$(echo $(xwininfo -id $(xdotool getactivewindow) -stats | \ egrep '(Width|Height):' | \ awk '{print $NF}') | \ sed -e 's/ /x/') SCREEN=$(xdpyinfo | grep -m1 dimensions | awk '{print $2}') if [ "$WINDOW" = "$SCREEN" ]; then exit 0 else exit 1 fi

Затем вы можете проверить его:

if is-full-screen ; then echo yup, full screen ; fi

Как указано ниже, вам нужно сначала установить xdotool:

sudo apt-get install xdotool
5
ответ дан 31 July 2018 в 12:34

Вид экстремального переполнения как сценария оболочки, но он должен сделать трюк:

#!/bin/bash WINDOW=$(echo $(xwininfo -id $(xdotool getactivewindow) -stats | \ egrep '(Width|Height):' | \ awk '{print $NF}') | \ sed -e 's/ /x/') SCREEN=$(xdpyinfo | grep -m1 dimensions | awk '{print $2}') if [ "$WINDOW" = "$SCREEN" ]; then exit 0 else exit 1 fi

Затем вы можете проверить его:

if is-full-screen ; then echo yup, full screen ; fi

Как указано ниже, вам нужно сначала установить xdotool:

sudo apt-get install xdotool
5
ответ дан 2 August 2018 в 03:49

Вид экстремального переполнения как сценария оболочки, но он должен сделать трюк:

#!/bin/bash WINDOW=$(echo $(xwininfo -id $(xdotool getactivewindow) -stats | \ egrep '(Width|Height):' | \ awk '{print $NF}') | \ sed -e 's/ /x/') SCREEN=$(xdpyinfo | grep -m1 dimensions | awk '{print $2}') if [ "$WINDOW" = "$SCREEN" ]; then exit 0 else exit 1 fi

Затем вы можете проверить его:

if is-full-screen ; then echo yup, full screen ; fi

Как указано ниже, вам нужно сначала установить xdotool:

sudo apt-get install xdotool
5
ответ дан 4 August 2018 в 19:53

Вид экстремального overkill как сценарий оболочки, но он должен сделать трюк:

  #! / bin / bash WINDOW = $ (echo $ (xwininfo -id $ (xdotool getactivewindow)  -stats | \ egrep '(Ширина | Высота):' | \ awk '{print $ NF}') | \ sed -e '/ / x /') SCREEN = $ (xdpyinfo | grep -m1 dimensions | awk '  {print $ 2} '), если ["$ WINDOW" = "$ SCREEN"];  затем exit 0 else exit 1 fi  

Тогда вы можете проверить его:

  if is-full-screen;  затем echo yup, полный экран;  fi  

Как указано ниже, вам нужно сначала установить xdotool:

  sudo apt-get install xdotool  
5
ответ дан 6 August 2018 в 03:55

Вид экстремального overkill как сценарий оболочки, но он должен сделать трюк:

  #! / bin / bash WINDOW = $ (echo $ (xwininfo -id $ (xdotool getactivewindow)  -stats | \ egrep '(Ширина | Высота):' | \ awk '{print $ NF}') | \ sed -e '/ / x /') SCREEN = $ (xdpyinfo | grep -m1 dimensions | awk '  {print $ 2} '), если ["$ WINDOW" = "$ SCREEN"];  затем exit 0 else exit 1 fi  

Тогда вы можете проверить его:

  if is-full-screen;  затем echo yup, полный экран;  fi  

Как указано ниже, вам нужно сначала установить xdotool:

  sudo apt-get install xdotool  
5
ответ дан 7 August 2018 в 21:53

Вид экстремального overkill как сценарий оболочки, но он должен сделать трюк:

  #! / bin / bash WINDOW = $ (echo $ (xwininfo -id $ (xdotool getactivewindow)  -stats | \ egrep '(Ширина | Высота):' | \ awk '{print $ NF}') | \ sed -e '/ / x /') SCREEN = $ (xdpyinfo | grep -m1 dimensions | awk '  {print $ 2} '), если ["$ WINDOW" = "$ SCREEN"];  затем exit 0 else exit 1 fi  

Тогда вы можете проверить его:

  if is-full-screen;  затем echo yup, полный экран;  fi  

Как указано ниже, вам нужно сначала установить xdotool:

  sudo apt-get install xdotool  
5
ответ дан 10 August 2018 в 10:08

Вид экстремального overkill как сценарий оболочки, но он должен сделать трюк:

  #! / bin / bash WINDOW = $ (echo $ (xwininfo -id $ (xdotool getactivewindow)  -stats | \ egrep '(Ширина | Высота):' | \ awk '{print $ NF}') | \ sed -e '/ / x /') SCREEN = $ (xdpyinfo | grep -m1 dimensions | awk '  {print $ 2} '), если ["$ WINDOW" = "$ SCREEN"];  затем exit 0 else exit 1 fi  

Тогда вы можете проверить его:

  if is-full-screen;  затем echo yup, полный экран;  fi  

Как указано ниже, вам нужно сначала установить xdotool:

  sudo apt-get install xdotool  
5
ответ дан 13 August 2018 в 16:28
  • 1
    Wow ... +1 для такого подробного сценария. Одно замечание: xdotool - отдельный пакет, который по умолчанию не установлен. – Nathan Osman 15 March 2011 в 07:18

Другие вопросы по тегам:

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