2011-11-22 2 views
4

매 초마다 특정 영역의 스크린 샷을 찍고 MMDDYYYYHH라는 파일 이름을 가질 수 있습니다. MM : ss가 가능합니다. 명령 행과 프로그램을 사용하여. 나는이매초마다 화면의 특정 영역의 스크린 샷 찍기

for((i=0;i<1000;i++)) 
do 
import -window root screenshot-$(date '+%d%b%y-%N').png 
sleep 5m 
done 

같은 스크립트를 사용하여 생각했다하지만 명령이 화면의 영역을 변경하고 파일을 저장할 때 이미지 품질을 제한 할 수있는 프로그램에 액세스 할 수 모른다. 추신 : 작동하려면 다른 프로그램을 사용하고 싶습니다. 나는 리눅스 우분투 10.04 64 비트를 사용하고있다.

감사합니다.

+0

흥미로운 질문입니다. 이게 왜 필요한지 궁금하네요? 대화식 세션의 애니메이션을 만들려고한다면 (저는 여기서 추측하고 있습니다) 스크린 캐스트를 만드는 더 좋은 방법이 있습니다 - http://www.linuxhaxor.net/?p=815 –

답변

8

당신은 화면의 영역을 지정하려면 import 명령 -crop WxH+X+Y 옵션을 사용할 수 있습니다. 그리고 출력의 품질/압축 수준에 대한 -quality 옵션. 이런 일 : .png위한 -quality 옵션 .jpg 포맷 거의 정반대의 의미를 갖는다

import -window root -crop 200x300+100+15 -quality 100 $(date +%Y%m%d-%H%M%S).png 

참고한다 : (10)의 값 PNG위한 '는 낮은 압축'(큰 크기)을 의미하는 동안 (100)의 값 - '최대 압축'(최소 크기). 반면에 jpg 값 10은 '낮은 품질'(낮은 크기)을 의미하고 값 100은 '최대 품질'(최대 크기)을 의미합니다.

+1

감사합니다. 셔터를 사용하여 좌표를 구합니다. –

0

스크린 샷으로 Linux 대안을 사용해 보셨습니까?

은 다음과 같습니다 Shutter, ScreenGrab, FireShot ...

2

다음은 내가 사용한 것입니다. 단지 다음 경우에 도움이 될 수 있습니다. Shutter (screengrab 프로그램)을 사용하고 선택 옵션을 선택하여 올바른 좌표를 얻은 다음 아래 스크립트에 입력하십시오.

#!/bin/bash 
for((i=1;i<10;i++)) 
do 
    import -window root -crop 454x394+69+269 -quality 200 $(date +%m%d%Y-%H%M%S).png 
    echo $i 
    #type this in a terminal to run  ./timed.sh 
sleep 1 
done 
관련 문제