コマンドラインからモニタ設定を取得する方法は?

コマンドラインからモニタ設定を取得する方法は?

コンピューターのモニター構成にアクセスするために必要なスクリプトを作成しています。どうすればいいですか?この情報にアクセスするために読めるコマンドやファイルはありますか?

現在私はそうします:

xwininfo -root

しかし、全体的な回避策だけを知って詳細はありません。私にとって必要なのは各画面の解像度です。

答え1

これはシステム設定によって大きく異なります。情報を取得する1つの方法は、次をxrandr使用することです。

xrandr --query

これにより、次のような内容が表示されます。

Screen 0: minimum 320 x 200, current 3046 x 1050, maximum 8192 x 8192
VGA1 connected 1680x1050+1366+0 (normal left inverted right x axis y axis) 473mm x 296mm
   1680x1050      60.0*+
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 353mm x 198mm
   1366x768       60.0*+
   1360x768       59.8     60.0  
   1024x768       60.0  
   800x600        60.3     56.2  
   640x480        59.9  
DP1 disconnected (normal left inverted right x axis y axis)

その後、一部のテキスト処理ツールを使用して各モニターの解像度を抽出できます。

答え2

このツールを試すことができますモニターの編集、次のような出力を生成します。

Name: DELL 2407WFP
EISA ID: DELa017
EDID version: 1.3
EDID extension blocks: 0
Screen size: 52.0 cm x 33.0 cm (24.25 inches, aspect ratio 16/10 = 1.60)
Gamma: 2.2
Digital signal
Max video bandwidth: 170 MHz

    HorizSync 30-83
    VertRefresh 56-76

    # Monitor preferred modeline (60.0 Hz vsync, 74.0 kHz hsync, ratio 16/1)
    ModeLine "1920x1200" 154 1920 1968 2000 2080 1200 1203 1209 1235 -hsyncc

これは、モニター情報を調べるときにXを実行したくない場合に便利です。

答え3

xrandrRandR拡張機能を備えた最新のXサーバーでのみ利用可能です。もちろん今はそうすべきですが、そうでなければ...

xdpyinfoまた、サイズ(ピクセルと物理サイズ)を含む各画面に関する情報を印刷します。

関連情報