シェル スクリプトから画面解像度を確認するにはどうすればよいでしょうか?
答え1
xdpyinfo | grep dimensions | sed -r 's/^[^0-9]*([0-9]+x[0-9]+).*$/\1/'
コマンドはxdpyinfo
、X サーバーに関するさまざまな情報を表示します。 標準出力に多くの情報が書き込まれますが、必要なのは という単語で始まる行だけなので、dimensions
を使用しますgrep
。最後に、 を使用してsed
結果をクリーンアップします。
答え2
xdpyinfo | grep dimensions
合計解像度が表示されます。複数のモニターがある場合は、すべてのモニターの合計xrandr --current
解像度が表示されます。各モニターの解像度が表示されます。
このスニペットを使用して、フルスクリーンにせずに rDesktop の最大可能な解像度を見つけます。
Xaxis=$(xrandr --current | grep '*' | uniq | awk '{print $1}' | cut -d 'x' -f1)
Yaxis=$(xrandr --current | grep '*' | uniq | awk '{print $1}' | cut -d 'x' -f2)
出力:
Xaxis = 1280
Yaxis = 1024
窓の装飾なし(多かれ少なかれ):
MaxRes=$(($Xaxis-5))"x"$(($Yaxis-25))
出力:
MaxRes = 1275x999
これは、フルスクリーンにしない rDesktop の最大解像度です。
終了コマンド:
rdesktop -u $User -P -z -5 -g $MaxRes $Host &
これまでのところ問題なく動作していますが、まだ徹底的にテストしていません。
もう 1 つの例は、次のスクリーンキャストの場合ですavconv
。
avconv -f x11grab -r 15 -s `xrandr --current | grep '*' | uniq | awk '{print $1}'` -i :0.0 -c:v libx264 ./output.mp4
答え3
modes
非常に簡単な方法は、sys ディレクトリ内のファイルを読み取ることです。
cat /sys/class/graphics/*/modes
またはそれぞれ
cat /sys/class/graphics/*/virtual_size
答え4
############################################# ## 私はこれをビデオ録画プログラムと一緒に使用します。 # ウィンドウサイズ --root オプション - 画面のルートウィンドウの情報 echo $(xwininfo -root | grep 'geometry' | awk '{print $2;}') 出力数: 1024x768+0+0 # 高さ x 幅 + x + y 位置。 ###################### ## 参考マニュアル ## 男 xwininfo