2010-06-30 3 views
9

나는 그것이 명령 행 옵션이라고 들었습니다. 나는 그것을 쓰는가 다음 내 LogCat을 파일로 출력하려고 시도했습니다.

adb logcat -s MessageBox > "C:\Users\me\Documents\LogCatOutput.txt" 

같은 것을 쓰고 싶었다하지만 이클립스의 실행! 실행 구성 ...! 대상! 추가 에뮬레이터 명령 줄 옵션 필드는 이미

-sdcard "C:\android-sdk-windows\tools\sd9m.img" 

으로 점유 그리고 어떻게 (즉, 구문이 정확합니까?) 필터링 된 태그 만 출력하고 필요는 출력하지 않아도됩니다. ("MessageBox"는 제 태그입니다.이 구두점이 맞는지 명령이 실행되는지는 알 수 없습니다.)

도움을 주셔서 감사합니다.

답변

13

C : \ android-sdk-windows \ tools에 adb.exe 파일이 있어야합니다. DOS 명령 프롬프트에서 수동으로 호출 할 수 있습니다.

cd C:\android-sdk-windows\tools 
adb logcat -s MessageBox > "C:\Users\me\Documents\LogCatOutput.txt" 

이 경우 Eclipse를 신경 쓸 필요가 없습니다.

$ adb logcat -d -s MessageBox > dump_file.txt 

하는 '-d'가 있는지 확인 : 당신은 즉시 로그 캣 버퍼 종료 이미 (스크립트에 유용)의 어떤 덤프하려면

+1

디렉토리에 생성 된 파일이 비어 있습니다. Android 앱을 실행하기 전과 후에 모두. 나는 무엇을해야할지 모른다. – user225626

+0

마지막 부분 (> "C : \ Users \ me \ Documents \ LogCatOutput.txt")을 생략하면 어떻게됩니까? 뭐가 보이니? –

+0

어디서 볼까요? – user225626

4

또는, 당신은 -d 옵션을 지정할 수 있습니다 'logcat'다음에.

+0

이 작업을 수행 할 필요가 없습니다. 이 옵션은 logcatdump를 로그하고 종료합니다. 이미 로깅 된 것을 덤프하고 싶을 때 유용하지만, 덤핑을 파일에 계속 남기지는 않습니다. – Shane

0

위의 답변에 대한 또 다른 유용한 추가 사항은 필터링입니다. 내가 작업하고있는 응용 프로그램은 막대한 양의 로깅을 생성하므로 필터를 사용하여 로그하는 것이 유용합니다. "T 번호를"

adb -s MyDevice logcat | find /V ": T#" > d:\temp\logcat.txt 

또는이 포함 된 줄에서 떨어져 모든 로그 캣 활동을 기록합니다 OSX/리눅스

adb -s MyDevice logcat | grep -v ": T#" > ~/logcat.txt 

에 대한

find 또는 GREP도 사용할 수는 기준으로 필터링하기 긍정적 인 결과. 그런 다음 BareTail의 좋아하는 항목을 사용하여 증가하는 로그 파일을 표시합니다.