Как получить конфигурацию мониторов из командной строки?

Я закончил тем, что использовал Perl DateTime::Event::Sunrise, потому что это имеет тенденцию быть легче для меня развернуть модуль от CPAN, чем скомпилировать программы C.

Демонстрационное использование:

use DateTime;
use DateTime::Astro::Sunrise;
$latitude = "+48.857"; $longitude = "+2.351"; 
$sr = DateTime::Astro::Sunrise->new($longitude, $latitude, 0, 3);
$date = DateTime->now; $date->set_time_zone("local");
($rise, $set) = $sr->sunrise($date);
$rise->set_time_zone("local"); $set->set_time_zone("local");
print $rise, " to ", $set, "\n";

Мой sunrise сценарий.

4
07.02.2018, 03:01
3 ответа

Это в большой степени зависит на съемочной площадке системы. Один способ получить информацию состоял бы в том если 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)

Вы могли затем использовать некоторый инструмент обработки текста для вытаскивания разрешения для каждого дисплея.

8
27.01.2020, 20:45

Вы могли попытаться использовать монитор-edid инструмента, который производит вывод как это

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 выполнений, когда Вы хотите зондировать свою информацию контроля.

8
27.01.2020, 20:45

xrandr только работы над более новыми X-серверами с расширением RandR. Предоставленный, который должен быть верным для всего в эти дни, но в случае, если не …

xdpyinfo также распечатывает информацию на экран, включая размер (пиксель и физический размер).

4
27.01.2020, 20:45
  • 1
    xdpyinfo просто обнаруживает один экран в моей двухмониторной конфигурации (с размером, который является суммой обоих размеров, то же самое как xwininfo - корень). Действительно ли это нормально? –  nbarraille 21.01.2011, 16:32
  • 2
    @nbarraille: Зависит от режима Zaphod. Модернизированная установка имеет один экран, в котором расположены все мониторы, но классическое расположение должно было иметь отдельный экран на монитор. –  ephemient 21.01.2011, 17:46

Теги

Похожие вопросы