¿Cómo puedo obtener la resolución del monitor usando la línea de comando?

51

Me gustaría encontrar el fondo de pantalla que mejor se adapte a mi resolución. ¿Cómo puedo obtener la resolución simplemente escribiendo comandos en la línea de comandos?

Abdul Al Hazred
fuente

Respuestas:

71

Tomado de esta respuesta :

xdpyinfo | grep dimensions

O para obtener solo la resolución:

xdpyinfo | awk '/dimensions/{print $2}'

O

xdpyinfo  | grep -oP 'dimensions:\s+\K\S+'
aguslr
fuente
8
Funciona para la configuración de un solo monitor, pero con dos monitores suma ambas dimensiones, para mí vuelven mis dos pantallas:3520x1200 pixels
Sylvain Pineau
3
Buen punto. Por otro lado, esto sigue siendo útil si está buscando un solo fondo de pantalla para abarcar todos los monitores.
aguslr
De hecho, tienes razón, +1;)
Sylvain Pineau
@aguslr ¿Cuál sería el punto de eso? Con dos monitores de 2000x1000, ¿de qué sirve una imagen de fondo de pantalla de 4000x2000?
Jos
1
@Jos, entiendo que este comando devolvería 4000x1000, es decir, coloca ambos monitores uno al lado del otro. Por ejemplo, Sylvain tiene dos monitores (1600x900 y 1920x1200) y obtiene 3520x1200.
aguslr
30

Yo solo usaría xrandr:

$ xrandr 
Screen 0: minimum 320 x 200, current 3520 x 1200, maximum 32767 x 32767
LVDS1 connected 1600x900+1920+0 (normal left inverted right x axis y axis) 310mm x 174mm
   1600x900       60.0*+
   1440x900       59.9  
   1360x768       59.8     60.0  
   1152x864       60.0  
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
VGA1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
DP1 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
   1920x1200      60.0*+
   1920x1080      60.0     50.0     59.9     24.0     24.0  
   1920x1080i     60.1     50.0     60.0  
   1600x1200      60.0  
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1280x720       60.0     50.0     59.9  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   720x576        50.0  
   720x480        60.0     59.9  
   640x480        75.0     60.0     59.9  
   720x400        70.1  
HDMI2 disconnected (normal left inverted right x axis y axis)
HDMI3 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
DP3 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

Aquí tengo dos pantallas, las resoluciones son:

  • 1600x900 (computadora portátil)
  • 1920x1200 (monitor)

Para obtener solo la resolución de su monitor principal, también puede usar este pyel oneliner:

$ python3 -c 'from gi.repository import Gdk; screen=Gdk.Screen.get_default(); \
geo = screen.get_monitor_geometry(screen.get_primary_monitor()); \
print(geo.width, "x", geo.height)'
1920 x 1200

Para obtener la resolución de su escritorio extendido (para una configuración de varios monitores):

$ python3 -c 'from gi.repository import Gdk; screen=Gdk.Screen.get_default(); \
print(screen.get_width(), "x", screen.get_height())'
3520 x 1200
Sylvain Pineau
fuente
xrandr + vesa = sin workee.
Joshua
Solo la resolución de las pantallas en uso:xrandr | grep " connected\|\*"
Pablo A
10

La solicitud fue para la resolución . Eso es dado por

xdpyinfo | grep resolution
Bob R
fuente
44
Por lo general, las personas usan la resolución para referirse a las dimensiones. El DPI no es tan preocupante como las dimensiones.
muru
3

También puedes usar:

 xrandr | grep ' connected'

Ejemplo de salida en una de mis máquinas:

LVDS connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
Billal Begueradj
fuente
1

Por lo que vale, cuando se usan múltiples pantallas conectadas y / o compensaciones con TwinView, entonces xdpyinfo le dará la resolución de todo el conjunto de pantallas de la forma en que están configuradas. Si necesita la resolución de un solo monitor o un monitor conectado a uno de los puertos de pantalla, debe usar xrandr. Sin embargo, incluso en esa configuración, xrandr puede ser poco confiable y no mostrar la resolución. Vea esta entrada de ejemplo de mi archivo de configuración de X Windows:

Option "MetaModes" "DP-1: 1440x900 +0+0, DP-3: 1440x900 +1568+0, DP-5: 1440x900 +3136+0"

La salida de xrandr se ve así:

DVI-D-0 disconnected primary (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 410mm x 256mm
   1440x900      59.89*+
   1280x1024     60.02
   1280x960      60.00
   1280x800      59.81
   1280x720      60.00
   1152x864      75.00
   1024x768      70.07    60.00
   800x600       75.00    60.32    56.25
   640x480       75.00    72.81    59.94
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected (normal left inverted right x axis y axis)
   1440x900      59.89 +  74.98
   1280x1024     60.02
   1280x960      60.00
   1280x800      59.81
   1280x720      60.00
   1152x864      75.00
   1024x768      70.07    60.00
   800x600       75.00    60.32    56.25
   640x480       75.00    72.81    59.94
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 connected 1440x900+1568+0 (normal left inverted right x axis y axis) 410mm x 256mm
   1440x900      59.89*+
   1280x1024     60.02
   1280x960      60.00
   1280x800      59.81
   1280x720      60.00
   1152x864      75.00
   1024x768      70.07    60.00
   800x600       75.00    60.32    56.25
   640x480       75.00    72.81    59.94

Puede ver que DP-3 no muestra una resolución en la línea que mostraría un grep para "conectado". Entonces, el comando mejor, más consistente y confiable que he encontrado para identificar la resolución de cualquier pantalla conectada individual es:

/usr/bin/xrandr --query|/usr/bin/grep -A 1 connected|grep -v connected

que produce esto:

   1440x900      59.89*+
--
   1440x900      59.89*+  74.98
--
   1440x900      59.89*+

En ese punto, es bastante trivial elegir las diferentes resoluciones o grep para un solo puerto.

usuario930364
fuente