清理xrandr输出以供 imagemagick 使用

清理xrandr输出以供 imagemagick 使用

我正在寻找一种报告显示分辨率的方法。我想设置脚本来启动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}'

搜索/\*/包含星号的行*

相关内容