web-dev-qa-db-fra.com

Changer seulement une orientation d'affichage du terminal

Je commence à travailler avec 2 écrans sur Ubuntu. L’un d’eux est rotatif, je peux donc l’utiliser facilement en mode portrait ou paysage. Mais je préfère avoir la possibilité de changer le paramètre d'orientation (que l'on peut trouver dans Paramètres système-> Bureau) à partir d'un terminal ou d'un script sur un écran, mais je ne fais pas pivoter l'autre.

Je suis à peu près sûr que c'est possible via xrandr!

5
Lapshin Dmitry

Étrange, mais j'ai trouvé la réponse en premier!

Tu utilises

$ xrandr --output $monitorName --rotate $direction

$monitorName peut être trouvé dans la sortie de

$ xrandr

et $direction est left pour anti-horaire ou right pour horaire.

Edit: En utilisant grep, il est possible d'écrire un script comme celui-ci:

#!/bin/bash

screen="HDMI1"

descr=$(xrandr | grep "$screen")
if echo "$descr" | grep disconnected
then
        echo "No $screen connected"
        exit 1
fi

alt="left"
if echo "$descr" | grep --quiet -P "^[^(]*$alt"
then
        rotate="normal"
else
        rotate="$alt"
fi
xrandr --output $screen --rotate $rotate 

qui change réellement l’orientation du moniteur stockée dans la variable $screen, et $alt est l’orientation alternative.

8
Lapshin Dmitry

Vous aurez besoin d'utiliser xrandr pour cela.

xrandr -o $orientation

$orientation est left, right, inverted ou normal.

Vous pouvez sélectionner l'affichage que vous souhaitez faire pivoter avec l'option --display.

4
argarevarg