Scripts para detectar las salidas de las tarjetas gráficas

He escrito y he distribuido mediante puppet a todas mis máquinas, cinco pequeños scripts ejecutables por el usuario que me permiten obtener cierta información acerca de las salidas de las tarjetas gráficas de los equipos:

  • screens
  • screens_connected
  • screens_count
  • screens_count_connected
  • screens_resolution

El script screens obtiene la lista de salidas y muestra cuál de ellas está conectada o desconectada:

screens
DVI-I-0 connected
VGA-0 disconnected
DVI-I-1 disconnected
HDMI-0 connected

El script screens_connected muestra las salidas que tienen conexión y la resolución:

screens_connected 
DVI-I-0 1600x900+0+0
HDMI-0 1600x900+0+0

El script screens_count muestra el número total de salidas gráficas:

screens_count
4

Y el script screens_count_connected muestra el número de salidas que se encuentran conectadas:

screens_count_connected 
2

En cuanto al script screens_resolution, muestra las resoluciones soportadas por cada dispositivo conectado:

screens_resolution 
Screen 0: minimum 8 x 8, current 1024 x 768, maximum 16384 x 16384
DVI-I-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 530mm x 300mm
   1920x1080     60.00 +
   1680x1050     59.95  
   1440x900      59.89  
   1280x1024     75.02    60.02  
   1280x960      60.00  
   1280x720      60.00  
   1024x768      75.03    70.07    60.00* 
   800x600       75.00    72.19    60.32    56.25  
   640x480       75.00    72.81    59.94  
VGA-0 connected 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*+
   1600x900      59.82  
   1400x900      59.88  
   1368x768      59.88    59.85  
   1360x768      59.96    59.80  
   1280x800      59.91    59.81  
   1280x720      59.86    59.74  
   1152x864      60.00  
   1024x576      59.90    59.82  
   960x540       59.82    59.63  
   864x486       59.92    59.57  
   800x600       72.19    60.32    56.25  
   800x450       59.82  
   700x450       59.88  
   684x384       59.88    59.85  
   680x384       59.96    59.80  
   640x480       59.94  
   640x400       59.98    59.88  
   640x360       59.86    59.83  
   512x384       60.00  
   512x288       60.00    59.92  
   480x270       59.82    59.63  
   432x243       59.92    59.57  
   400x300       72.19  
   320x240       60.05  
DVI-I-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)

Por si a alguien le resulta de utilidad, a continuación dejo el código de los scripts:

cat /usr/local/bin/screens
#!/bin/bash

XAUTHORITY=/var/run/lightdm/root/:0 /usr/bin/xrandr -display :0 | grep connected | awk '{print $1,$2}'
cat /usr/local/bin/screens_connected
#!/bin/bash

XAUTHORITY=/var/run/lightdm/root/:0 /usr/bin/xrandr -display :0 | grep -w connected | awk '{print $1,$3}'
cat /usr/local/bin/screens_count
#!/bin/bash

XAUTHORITY=/var/run/lightdm/root/:0 /usr/bin/xrandr -display :0 | grep connected | wc -l
cat /usr/local/bin/screens_count_connected
#!/bin/bash

XAUTHORITY=/var/run/lightdm/root/:0 /usr/bin/xrandr -display :0 | grep -w connected | wc -l
cat /usr/local/bin/screens_resolution
#!/bin/bash

XAUTHORITY=/var/run/lightdm/root/:0 /usr/bin/xrandr -display :0 
Be the first to comment

Por favor acceder para comentar.