Estoy buscando un método para informar la resolución de la pantalla. Quiero configurar scripts para ejecutar rdesktop
y quiero ejecutarlo en varias máquinas con diferentes resoluciones, por lo que quiero una forma de determinarlo dinámicamente.
Respuesta1
Utilice el comando xrandr
. Sin ningún argumento muestra las resoluciones disponibles y la actual (con un asterisco), por ejemplo:
$ xrandr | fgrep '*'
Respuesta2
Solución alternativa: xdpyinfo | grep dimensions
. xdpyinfo
es anterior a xrandr
, por lo que podría ser más portátil si utiliza una distribución muy antigua o algún servidor X diferente.
Respuesta3
Puede obtener las resoluciones horizontal y vertical usando el siguiente comando:
xdpyinfo | grep dimensions | awk '{print $2}' | awk -Fx '{print $1, $2}'
o, en forma más compacta (como lo sugiere Peter.O enestecomentario):
xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}'
Por ejemplo, en una pantalla de 1600x900 esto producirá el siguiente resultado:
1600 900
Luego puede colocar los valores en variables separadas usando el comando:
read RES_X RES_Y <<<$(xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}')
Muestre los valores de las variables anteriores usando el comando:
echo $RES_X, $RES_Y
En una pantalla de 1600x900, el resultado es:
1600, 900
Respuesta4
xrandr
Salida limpia para uso de imagemagick
xrandr |awk '/\*/ {print $1}'
Busca /\*/
la línea que contiene un asterisco *
.