ADB 로 화면 캡쳐하여 저장하는 방법 (ADB screen capture)
# Test Server 에 5대의 android board 가 연결되어 있어 for 문을 사용하여 모두 한번에 캡쳐한 파일을 저장하도록 합니다.
전체 소스는 아래와 같습니다. 이 파일을 imagecp 라는 파일로 저장하여 놓고 chmod +x imagecp 명령으로 실행 permission 을 주고 실행하면 됩니다.
for board_num in 1 2 3 4 5
do
if [ -f "~/home/test_board0$board_num.png" ]
then
rm "~/home/test_board0$board_num.png"
fi
adb -s test_board0$board_num shell "screencap -p /sdcard/test_board0$board_num.png"
adb -s test_board0$board_num pull /sdcard/test_board0$board_num.png ~/home/test_board0$board_num.png
scp ~/home/test_board0$board_num.png jason@10.199.4.58:/data/home/stability/TestTools/test_board0$board_num.png
done
내용을 설명하자면 아래와 같습니다.
# Test Server 에 5대의 android board 가 연결되어 있어 for 문을 사용하여 모두 한번에 캡쳐한 파일을 저장하도록 합니다.
for board_num in 1 2 3 4 5
do
# 먼저 기존에 캡쳐했던 이미지를 삭제합니다.
# if 조건문의 -f 는 파일의 유무를 체크하는 옵션입니다.
if [ -f "~/home/test_board0$board_num.png" ]
then
rm "~/home/test_board0$board_num.png"
fi
# adb shell 명령으로 android board 내의 screencap 명령을 실행합니다. -p 옵션을 사용하여 png 파일로 저장합니다.
adb -s test_board0$board_num shell "screencap -p /sdcard/test_board0$board_num.png"
# adb pull 명령으로 Test Server 로 캡쳐한 파일을 가져옵니다.
adb -s test_board0$board_num pull /sdcard/test_board0$board_num.png ~/home/test_board0$board_num.png
# Test Server 에 있는 파일을 직접 보는 것이 불가능 할 경우 로컬 PC로 복사 합니다.
scp ~/home/test_board0$board_num.png jason@10.199.4.58:/data/home/stability/TestTools/test_board0$board_num.png
done
일반적인 경우 scp 명령을 사용하면 비밀번호를 물어보게 됩니다. 매번 비밀번호를 입력해 주는 방법도 있지만 scp 를 사용할 때 마다 입력한다는 것이 매우 비 효율적이므로 ssh-copy-id 명령으로 비번을 묻지 않도록 합니다.
관련 내용은 http://bluelight.tistory.com/303 에서 참고 하였습니다.
Test Server 에서 아래 명령을 실행 합니다.
# ssh-copy-id jason@10.199.4.58
jason@10.199.4.58's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'jason@10.199.4.58'"
and check to make sure that only the key(s) you wanted were added.
이렇게 하여 imagecp 명령 한번으로 5개 테스트 보드의 화면을 한곳에 모아서 볼 수 있게 되었습니다.
이상 ADB 로 화면 캡쳐하여 저장하는 방법 (ADB screen capture)에 대한 글 이였습니다.
Ubuntu PC 이름 알아내기, Ubuntu kernel version 알아내기 (0) | 2014.10.21 |
---|---|
ubuntu linux rsync 사용법 불필요한 파일 제외하고 복사하기 (0) | 2014.10.06 |
Ubunut 에서 telnet 연결 끊기 disconnect telnet connection (0) | 2014.09.11 |
android source web 에서 확인 하는 방법 (0) | 2013.02.05 |
Ubuntu Linux Samba 공유 폴더 Mount 하기 (삼바 폴더 마운트 하기) (1) | 2012.12.30 |