Linux检索监视器名称

情况:我正在使用多个显示器,我想在bash中获得他们的名字.目前我正在使用Ubuntu 10.04.

我知道xrandr.从中我只能得到统计数据.我想要的是读取数组中的所有监视器名称以与它们一起工作.

有没有一个明确的方法来做,而不是从某种字符串中删除名字?一个明确的方法是从文件中读取它们.一个不清楚的方法是将xrandr输出管理到某种类型的一个函数,从中删除名称.

解决方法

sudo get-edid没有为我工作. (编辑:现在在另一台电脑上工作,Lubuntu 14.10;我会怪B IOS的差异,但这是一个随机的猜测…)

无论如何在X下,xrandr –verbose打印EDID块.这是一个快速而肮脏的方法来解压缩并传递给parse-edid:

#!/bin/bash
xrandr --verbose | perl -ne '
if ((/EDID(_DATA)?:/.../:/) && !/:/) {
  s/^\s+//;
  chomp;
  $hex .= $_;
} elsif ($hex) {
  # Use "|strings" if you dont have read-edid package installed 
  # and just want to see (or grep) the human-readable parts.
  open FH,"|parse-edid"; 
  print FH pack("H*",$hex); 
  $hex = "";
}'

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...