Use o comando xrandr
. Sem nenhum argumento, exibe as resoluções disponíveis e a atual (com um asterisco), por exemplo:
$ xrandr | fgrep '*'
Estou procurando um método de relatório de resolução de exibição. Eu quero configurar scripts para iniciar o rdesktop
, e eu quero lançá-lo em várias máquinas com diferentes resoluções, então eu quero uma maneira de determiná-lo dinamicamente.
Solução alternativa: xdpyinfo | grep dimensions
. xdpyinfo
é mais antigo que xrandr
, então pode ser mais portável se você usar uma distribuição muito antiga ou algum servidor X diferente.
Você pode obter as resoluções horizontal e vertical usando o seguinte comando:
xdpyinfo | grep dimensions | awk '{print $2}' | awk -Fx '{print $1, $2}'
ou, de forma mais compacta (como sugerido por Peter.O em este comentário):
xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}'
Por exemplo, em um monitor de 1600x900, isso produzirá a seguinte saída:
1600 900
Você pode então colocar os valores em variáveis separadas usando o comando:
read RES_X RES_Y <<<$(xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}')
Exiba os valores das variáveis acima usando o comando:
echo $RES_X, $RES_Y
Em um monitor de 1600x900, a saída é:
1600, 900
Eu deveria ter parecido um pouco mais difícil antes de postar. xrandr
ecoará as configurações de exibição atuais, se não for fornecido nenhum outro argumento.
Por padrão, isso despejará todas as configurações de exibição possíveis, isso pode ser filtrado da seguinte forma:
xrandr | egrep '^[^ ]|[0-9]\*\+'
xrandr
de saída para uso do imagemagick xrandr |grep \* |awk '{print $1}'
Tags xorg linux display-settings