android - 怎么adb logcat 输出到文件,并把文件命名为当前时间?
PHP中文网
PHP中文网 2017-04-17 17:52:42
0
3
888

adb logcat | grep -i "system.err" > test.log

这样可以输出log,可是执行两次这个命名,会把上次的覆盖掉,能不能动态的给“test.log”命名,比如命名为当前时间.log。 如2016-08-17-19-09-50.log

PHP中文网
PHP中文网

认证0级讲师

모든 응답(3)
Peter_Zhu

adb logcat > "%date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,2%-%time:~3,2 %-%time:~6,2%.txt"


출력은 다음과 같습니다: 2016-11-09 15-40-16.txt

참고:
Windows cmd 명령줄 창에서 date 명령을 실행한 후 이 환경 변수의 값은

입니다.

그러면 다음 각 연산의 의미는 다음과 같습니다.
%date:~0,4%는 포인터가 왼쪽에서 오른쪽으로 0비트 이동한 다음 4자리 문자가 포인터가 오프셋된 위치에서 추출됩니다. 결과는 2016(연도 값)입니다.
%date:~5,2%는 포인터가 왼쪽에서 오른쪽으로 5자리 오프셋된 후 추출된다는 의미입니다. 오프셋에서 2문자, 결과는 11(월의 값)
%date:~8,2%는 포인터가 왼쪽에서 오른쪽으로 8비트 오프셋된 다음에서 시작하여 2문자를 추출한다는 의미입니다. 결과는 09(일의 값)입니다.

또 다른 예:
%date:~5%는 포인터가 왼쪽에서 오른쪽으로 5비트 오프셋된 다음 모든 값을 추출한다는 의미입니다.
%date:~-5%는 포인터가 반대 방향으로 오프셋되어 있으며, 가장 오른쪽 끝부터 시작하여 5비트만큼 오프셋된 다음 포인터에서 왼쪽에 있는 모든 값을 추출합니다.

시간 변수의 값을 살펴보겠습니다.

그러면 다음 각 작업의 의미는 다음과 같습니다.
%time:~0,2%는 포인터가 왼쪽에서 오른쪽으로 0비트씩 이동한 다음 해당 문자부터 2문자를 추출한다는 의미입니다. 포인터가 오프셋된 위치. 결과는 시 필드 값
%time:~3,2%입니다. 이는 포인터가 왼쪽에서 오른쪽으로 3자리 오프셋된 다음 오프셋에서 2자를 추출한다는 의미입니다. 결과는 분 필드 값입니다.
%time:~6 ,2%는 포인터가 왼쪽에서 오른쪽으로 6비트 오프셋된 다음 오프셋에서 시작하여 2자를 추출한다는 의미입니다. 결과는 두 번째 필드 값

阿神

> log_$(date "+%b_%d_%Y_%H.%M.%S").log
시간 형식은 직접 조정할 수 있습니다.

洪涛

위 명령을 수정하세요

으아아아
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿