Я не совсем уверен, что вы хотите, но следующая команда получит положение и размеры вашей оболочки:
$ wmctrl -plG|grep -E "^[^ ]+ +[^ ]+ $PPID "
0x0560000b  1 2481   10   47   1352 386  Lenovo-Ubuntu Terminal
Это упрощенно, потому что он работает только из начальной оболочки; для работы из под-оболочки вам понадобится:
$ wmctrl -plG|grep -E "^[^ ]+ +[^ ]+ $(pid=$PPID; until [ "`ps -p $pid -o comm= | grep -i term`" ]; do pid=`ps -p $pid -o ppid=`; done; echo $pid) "
0x0560000b  1 2481   10   47   1352 386  Lenovo-Ubuntu Terminal
Это предполагает, что ваш терминал содержит term в своем имени: вам может понадобиться другой способ идентифицировать ваш терминал (извините за длинную строку, но большая часть его находится в строке поиска).
Вы можете узнать размеры подключенных мониторов, набрав:
$ xrandr | grep ' connected'
LVDS1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
HDMI1 connected 1920x1080+1366+0 (normal left inverted right x axis y axis) 708mm x 398mm
После размеров +0+0 и +1366+0 - это смещения по осям X и Y каждого монитора в общем экране.
Чтобы узнать монитор, на котором отображается терминал, вам нужно сравнить ось X (между знаками «+») с четвертым полем в выводе wmctrl чтобы найти самый правый монитор, ось X которого меньше X-положение терминала.
В приведенных мною примерах положение X терминала равно 10 , что больше 0 , ось X LVDS1 , но меньше 1366 , ось X HDMI1 , поэтому терминал находится на LVDS1 , размеры которого следовательно, 1366x768 .
В отличие от этого команда wmctrl на терминале на другом экране выдает :
0x0740000f 1 12147 1466 46 2356 966 Lenovo-Ubuntu xterm
Здесь 1466 больше, чем 0 и 1366 , поэтому самый правый монитор - HDMI1 с размерами 1920x1080 .
Обратите внимание, что терминал может располагаться на двух мониторах: то, что я описал, найдет самый левый из них, но вы можете проверить некоторые другие поля, если вы хотите сделать что-то другое в этом случае.
Для сравнения вам понадобятся сложные сценарии, и я не собираюсь делать это для вас, но я надеюсь, что у вас достаточно информации для начала.