どのモニタが有効/無効になっているかを確認する方法

どのモニタが有効/無効になっているかを確認する方法

以下を使用して、LVDSディスプレイを有効または無効にできます。

xrandr --output LVDS --auto
xrandr --output LVDS --off

それぞれのディスプレイが有効になっていることをプログラムで確認するには?

xrandr -q有効/無効状態に関係なく、接続されているLVDSを表示します。

答え1

if xrandr --listactivemonitors | grep -q "LVDS"; then echo "enabled"; else echo "disabled"; fi

答え2

@derobertのコメントによると:

VGA-0オフ:

VGA-0 connected (normal left inverted right x axis y axis)
1280x1024     60.02 +  75.02 
...

VGA-0オン:

VGA-0 connected 1280x1024+1680+0 (normal left inverted right x axis y axis) 380mm x 300mm
1280x1024     60.02*+  75.02 
...

したがって、この静かな戻り値をチェックして、実際に有効にgrepなっていることを確認できます(もちろん、これをより一般的な正規表現に単純化できます)。

grep -q 'VGA-0 connected 1280x1024+1680+0 (normal left inverted right x axis y axis) 380mm x 300' \
&& echo "connected AND enabled"

または出力の場合(上記のコメントから取得):

grep -q 'LVDS connected 1680x1050+0+0 (normal left inverted right x axis y axis) 331mm x 207mm' \
  && echo "connected AND enabled"

関連情報