我正在寻找一种报告显示分辨率的方法。我想设置脚本来启动rdesktop
,并且我想在具有不同分辨率的几台机器上启动它,所以我想要一种动态确定它的方法。
答案1
使用命令xrandr
。如果不使用任何参数,它将显示可用的分辨率和当前的分辨率(带星号),例如:
$ xrandr | fgrep '*'
答案2
替代解决方案:xdpyinfo | grep dimensions
.xdpyinfo
比 更旧xrandr
,因此如果您碰巧使用非常旧的发行版或某些不同的 X 服务器,它可能更具可移植性。
答案3
您可以使用以下命令获取水平和垂直分辨率:
xdpyinfo | grep dimensions | awk '{print $2}' | awk -Fx '{print $1, $2}'
或者,采用更紧凑的形式(如 Peter.O 所建议的这评论):
xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}'
例如,在 1600x900 的显示屏上,这将产生以下输出:
1600 900
然后,您可以使用以下命令将值放入单独的变量中:
read RES_X RES_Y <<<$(xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}')
使用以下命令显示上述变量的值:
echo $RES_X, $RES_Y
在 1600x900 的显示屏上,输出为:
1600, 900
答案4
清理xrandr
输出以供 imagemagick 使用
xrandr |awk '/\*/ {print $1}'
搜索/\*/
包含星号的行*
。