쉘 스크립트에서 화면 해상도를 어떻게 알 수 있나요?
답변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 &
지금까지는 잘 작동하지만 철저하게 테스트하지는 않았습니다.
또 다른 예는 다음을 사용하는 스크린캐스트입니다 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
######################################### ## 영상녹화 프로그램과 함께 사용하고 있습니다. # window size --root 옵션 - 화면의 루트 창에 대한 정보 echo $(xwininfo -root | grep '기하학' | awk '{print $2;}') # 출력: 1024x768+0+0 # 높이 x 너비 + x + y 위치. ##################### ## 참조 매뉴얼 ## 남자 xwininfo