Bash はすべてのディスプレイ出力ポートをリストします。

Bash はすべてのディスプレイ出力ポートをリストします。

私のラップトップにあるすべてのビジュアル出力ポートを印刷するコマンドを探しています。

しばらくStackとGoogleで検索しましたが、答えが見つかりませんでした。

私が得た最も近いものはxandr

eDP-1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 277mm x 156mm
   1366x768      60.00*+  40.00  
   1360x768      59.80    59.96  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   960x600       60.00  
   960x540       59.99  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   800x512       60.17  
   700x525       59.98  
   640x512       60.02  
   720x450       59.89  
   640x480       60.00    59.94  
   680x384       59.80    59.96  
   576x432       60.06  
   512x384       60.00  
   400x300       60.32    56.34  
   320x240       60.05  
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)

似たようなものを探しています。

HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)

残念ながら、この出力には必要な情報は表示されません。が提供する情報xrandrが正しくありません。

試してみましたがlspcidmesgおそらくそこにありますが見つからないかもしれません)、lshwいくつかのハードウェアリストコマンドがあるかもしれません。

理想的な状況は

VGA x1
HDMI x1 or mini
DP x1
DVI x1

しかし、正しい方向を指すアドバイスは大いに感謝します。

答え1

だから私のコンピュータでデュアルモニタの設定を変更しようとすると、あなたの投稿が見つかりました。実際のディスプレイに興味があるので、接続されているモニタリソースでEDIDを探しています。

find /sys/devices -name "edid"

次の出力が生成されます。

/sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-HDMI-A-1/edid
/sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-DVI-D-1/edid
/sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-DP-2/edid
/sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-HDMI-A-2/edid
/sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-DP-1/edid

これらすべてが機能するわけではありませんが、/sysのさまざまなフォルダを見ると、次のようなstatusというファイルを見つけることができます。

cat /sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-DP-1/status
connected

次の手順を実行して、接続されているディスプレイデバイス(実際のグラフィックカードの出力コントラスト)の詳細を確認することもできます。

cat /sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/drm/card0/card0-DP-1/edid | edid-decode
Extracted contents:
header:          00 ff ff ff ff ff ff 00
serial number:   41 0c 0b 09 cd 0e 00 00 32 1a
version:         01 04
basic params:    b5 46 28 78 3a
chroma info:     59 05 af 4f 42 af 27 0e 50 54
established:     bd 4b 00
standard:        d1 c0 81 80 81 40 95 0f 95 00 b3 00 81 c0 01 01
descriptor 1:    4d d0 00 a0 f0 70 3e 80 30 20 35 00 ba 8e 21 00 00 1a
descriptor 2:    a3 66 00 a0 f0 70 1f 80 30 20 35 00 ba 8e 21 00 00 1a
descriptor 3:    00 00 00 fc 00 50 48 4c 20 33 32 38 50 36 56 0a 20 20
descriptor 4:    00 00 00 fd 00 17 50 1e a0 3c 01 0a 20 20 20 20 20 20
extensions:      01
checksum:        74

Manufacturer: PHL Model 90b Serial Number 3789
Made week 50 of 2016
EDID version: 1.4
Digital display
10 bits per primary color channel
DisplayPort interface
Maximum image size: 70 cm x 40 cm
Gamma: 2.20
DPMS levels: Off
Supported color formats: RGB 4:4:4, YCrCb 4:4:4, YCrCb 4:2:2
First detailed timing is preferred timing
Established timings supported:
  720x400@70Hz
  640x480@60Hz
  640x480@67Hz
  640x480@72Hz
  640x480@75Hz
  800x600@60Hz
  800x600@75Hz
  1024x768@60Hz
  1024x768@75Hz
  1280x1024@75Hz
Standard timings supported:
  1920x1080@60Hz
  1280x1024@60Hz
  1280x960@60Hz
  1440x900@75Hz
  1440x900@60Hz
  1680x1050@60Hz
  1280x720@60Hz
Detailed mode: Clock 533.250 MHz, 698 mm x 398 mm
               3840 3888 3920 4000 hborder 0
               2160 2163 2168 2222 vborder 0
               +hsync -vsync 
Detailed mode: Clock 262.750 MHz, 698 mm x 398 mm
               3840 3888 3920 4000 hborder 0
               2160 2163 2168 2191 vborder 0
               +hsync -vsync 
Monitor name: PHL
Monitor ranges (bare limits): 23-80Hz V, 30-160kHz H, max dotclock 600MHz
Has 1 extension blocks
Checksum: 0x74 (valid)

CEA extension block
Extension version: 3
34 bytes of CEA data
  Video data block
    VIC  16 1920x1080@60Hz 
    VIC  31 1920x1080@50Hz 
    VIC   4 1280x720@60Hz 
    VIC  19 1280x720@50Hz 
    VIC   3 720x480@60Hz 
    VIC  18 720x576@50Hz 
    VIC   2 720x480@60Hz 
    VIC  17 720x576@50Hz 
    VIC   1 640x480@60Hz 
    VIC   5 1920x1080i@60Hz 
    VIC  20 1920x1080i@50Hz 
  Audio data block
    Linear PCM, max channels 2
    Supported sample rates (kHz): 48 44.1 32
    Supported sample sizes (bits): 24 20 16
  Speaker allocation data block
    Speaker map: FL/FR
  Vendor-specific data block, OUI 000c03 (HDMI)
    Source physical address 1.0.0.0
    DC_30bit
    DC_Y444
    DVI_Dual
    Maximum TMDS clock: 600MHz
    Extended HDMI video details:
      HDMI VIC 0 3840x2160@30Hz
      HDMI VIC 1 3840x2160@25Hz
      HDMI VIC 2 3840x2160@24Hz
Underscans PC formats by default
Basic audio support
Supports YCbCr 4:4:4
Supports YCbCr 4:2:2
1 native detailed modes
Detailed mode: Clock 27.000 MHz, 698 mm x 398 mm
                720  736  798  858 hborder 0
                480  489  495  525 vborder 0
               -hsync -vsync 
Detailed mode: Clock 74.250 MHz, 698 mm x 398 mm
               1280 1390 1430 1650 hborder 0
                720  725  730  750 vborder 0
               +hsync +vsync 
Detailed mode: Clock 148.500 MHz, 698 mm x 398 mm
               1920 2448 2492 2640 hborder 0
               1080 1084 1089 1125 vborder 0
               +hsync +vsync 
Detailed mode: Clock 147.170 MHz, 698 mm x 398 mm
               2048 2096 2128 2208 hborder 0
               1080 1083 1093 1111 vborder 0
               +hsync -vsync 
Checksum: 0x18 (valid)

EDID block does NOT conform to EDID 1.3!
        Detailed block string not properly terminated

答え2

これは複雑な問題です。

xrandrすべての出力は、X11サーバーの制御下にあるすべてのGPUの知識に基づいて表示されます。ただし、ハードウェアメーカーは、GPUチップのDisplayPort出力をDVIに変換するなど、内蔵コンバータを追加したり、単にGPU出力の一部を接続していないままにすることができます。 GPUはもちろん、さらにxrandrこれらの変更を知る方法はありません。さらに、リストされたDisplayPort出力は、物理的にMini-DPまたはThunderbolt接続にすることができます。

2つのGPUを搭載したノートパソコンがあり、そのうちの1つを無効にする場合(BIOSやNVidia Optimusテクノロジ用のBumblebeeなどのソフトウェアを介して)、無効なGPUの出力は明らかに使用できませんxrandr

問題を解決するもう1つの方法は、次を使用することですdmidecodedmidecode -t 8BIOS DMIデータから、ハードウェア製造元が説明したすべてのコネクタ/ポートのリストを取得する必要があります。ただし、この情報は常に正確でも完全でもない可能性があります。私のラップトップにはDMIコネクタ情報がまったく表示されていません。

答え3

sysfs のカーネル DRI デバッグは、ビデオカーネルモジュールで認識されるコネクタを示しています。

たとえば、私のビデオカーネルモジュールはi915次のようになります。

 sudo grep "^connector" /sys/kernel/debug/dri/0/i915_display_info

そして得る

connector 71: type eDP-1, status: connected
connector 80: type DP-1, status: disconnected
connector 86: type HDMI-A-1, status: disconnected
connector 90: type DP-2, status: disconnected
connector 95: type HDMI-A-2, status: disconnected
connector 97: type DP-3, status: disconnected
connector 105: type DP-4, status: connected
connector 101: type DP-5, status: connected

ここにリストされているポートはの出力と異なる場合がありますxrandr。たとえば、私のxrandr出力は次のようになります。eDP-1, DP-2-2, DP-2-3

答え4

xrandr | awk 'BEGIN { hdmi=dp=0; }; 
    /^HDMI-/ { hdmi++;}; /^DP-/ { dp++; };
    END { printf "%8s%s\n","HDMI x",hdmi; printf "%8s%s\n","DP x",dp; }' 

  HDMI x1
    DP x0

関連情報