脚本代码如下(网上抄的),复制代码保存为bat文件,默认日志路径为E:monkey.log,将日志保存在这个文件里面,双击运行bat脚本即可
1 @ECHO OFF 2 ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: 3 ECHO.:: 分析Monkey日志 :: 4 ECHO.:: 作者:DAHAI :: 5 ECHO.:: 版本 V1.0.1 :: 6 ECHO.:: 时间:2020-08-14 :: 7 ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: 8 REM 方法一:手动设置Monkey日志路径 9 SET monkeyLogFile=E:monkey.log 10 11 REM 方法二:直接将Monkey日志拖到此bat文件上 12 IF NOT "%1"=="" SET monkeyLogFile=%1 13 14 ECHO.[ INFO ] Monkey日志: %monkeyLogFile% 15 ECHO.[ INFO ] 开始分析 16 SET blnException=0 17 ECHO. 18 ECHO. 19 REM 如果觉得分析太快,没有感觉,把下面注释去掉假装分析中,有停顿感 20 REM ping -n 2 127.0.0.1>nul 21 22 ::ANR日志 23 FOR /F "delims=" %%a IN (‘FINDSTR /C:"ANR" %monkeyLogFile%‘) DO ( 24 SET strANR=%%a 25 ) 26 27 ::崩溃日志 28 FOR /F "delims=" %%a IN (‘FINDSTR /C:"CRASH" %monkeyLogFile%‘) DO ( 29 SET strCRASH=%%a 30 ) 31 32 ::异常日志 33 FOR /F "delims=" %%a IN (‘FINDSTR /C:"Exception" %monkeyLogFile%‘) DO ( 34 SET strException=%%a 35 ) 36 37 ::正常 38 FOR /F "delims=" %%a IN (‘FINDSTR /C:"Monkey finished" %monkeyLogFile%‘) DO ( 39 SET strFinished=%%a 40 ) 41 42 IF NOT "%strANR%" == "" ( 43 ECHO.[ INFO ] 分析Monkey日志存在: ANR 44 ECHO.[ INFO ] ------------------------------------ 45 ECHO. "%strANR%" 46 SET /a blnException+=1 47 ECHO. 48 ) 49 50 IF NOT "%strCRASH%" == "" ( 51 ECHO.[ INFO ] 分析Monkey日志存在: CRASH 52 ECHO.[ INFO ] ------------------------------------ 53 ECHO. "%strCRASH%" 54 SET /a blnException+=1 55 ECHO. 56 ) 57 58 IF NOT "%strException%" == "" ( 59 ECHO.[ INFO ] 分析Monkey日志存在: 异常 60 ECHO.[ INFO ] ------------------------------------ 61 ECHO. "%strException%" 62 SET /a blnException+=1 63 ) 64 65 IF NOT "%strFinished%" == "" ( 66 ECHO.[ INFO ] 分析Monkey日志存在: 执行成功标记 67 ECHO.[ INFO ] ------------------------------------ 68 ECHO. "%strFinished%" 69 ECHO. 70 ) ELSE ( 71 IF %blnException% EQU 0 ECHO.[ INFO ] 分析Monkey日志结果: Monkey执行异常中断,请重新执行Monkey脚本! 72 ECHO. 73 ) 74 75 REM 如果blnException不为0,说明存在异常,改变字体为淡紫色 76 IF %blnException% NEQ 0 ( 77 Color 0D 78 ECHO.[ INFO ] 分析Monkey日志结果:存在异常日志,请手工再仔细检查! 79 ECHO. 80 ) ELSE ( 81 ECHO.[ INFO ] 分析Monkey日志结果:正常 82 ECHO. 83 ) 84 ECHO. 85 ECHO.[ EXIT ] 按任意键关闭窗口... 86 PAUSE>nul
第一次运行会发现打印出来的信息全是乱码,原因是咱们cmd窗口的默认编码格式是gbk,而bat脚本的编码格式是utf-8
解决方法也很简单,修改cmd窗口的编码格式
方法一,每次打开CMD修改当前活动编码格式
修改成功,把脚本拖进来即可,按回车运行脚本
方法二,每次改编码格式太烦了,直接修改电脑的默认编码格式,搜索--进入语言设置( 方法二虽然一劳永逸但是修改了电脑编码格式可能会有软件出现不兼容的情况,所以还是不推荐使用)
然后如图操作即可--可能需要重启电脑
方法三,参考方法一,cmd输入命令 chcp 65001 就可以修改编码格式,那么其实在脚本的第一行写上 chcp 65001 就行了,每次双击打开就会自动修改当前窗口编码格式
就第一行增加了一句chcp 65001,其它内容保持不变即可
1 chcp 65001 2 3 @ECHO OFF 4 ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: 5 ECHO.:: 分析Monkey日志 :: 6 ECHO.:: 作者:DAHAI :: 7 ECHO.:: 版本 V1.0.1 :: 8 ECHO.:: 时间:2020-08-14 :: 9 ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: 10 REM 方法一:手动设置Monkey日志路径 11 SET monkeyLogFile=E:monkey.log 12 13 REM 方法二:直接将Monkey日志拖到此bat文件上 14 IF NOT "%1"=="" SET monkeyLogFile=%1 15 16 ECHO.[ INFO ] Monkey日志: %monkeyLogFile% 17 ECHO.[ INFO ] 开始分析 18 SET blnException=0 19 ECHO. 20 ECHO. 21 REM 如果觉得分析太快,没有感觉,把下面注释去掉假装分析中,有停顿感 22 REM ping -n 2 127.0.0.1>nul 23 24 ::ANR日志 25 FOR /F "delims=" %%a IN (‘FINDSTR /C:"ANR" %monkeyLogFile%‘) DO ( 26 SET strANR=%%a 27 ) 28 29 ::崩溃日志 30 FOR /F "delims=" %%a IN (‘FINDSTR /C:"CRASH" %monkeyLogFile%‘) DO ( 31 SET strCRASH=%%a 32 ) 33 34 ::异常日志 35 FOR /F "delims=" %%a IN (‘FINDSTR /C:"Exception" %monkeyLogFile%‘) DO ( 36 SET strException=%%a 37 ) 38 39 ::正常 40 FOR /F "delims=" %%a IN (‘FINDSTR /C:"Monkey finished" %monkeyLogFile%‘) DO ( 41 SET strFinished=%%a 42 ) 43 44 IF NOT "%strANR%" == "" ( 45 ECHO.[ INFO ] 分析Monkey日志存在: ANR 46 ECHO.[ INFO ] ------------------------------------ 47 ECHO. "%strANR%" 48 SET /a blnException+=1 49 ECHO. 50 ) 51 52 IF NOT "%strCRASH%" == "" ( 53 ECHO.[ INFO ] 分析Monkey日志存在: CRASH 54 ECHO.[ INFO ] ------------------------------------ 55 ECHO. "%strCRASH%" 56 SET /a blnException+=1 57 ECHO. 58 ) 59 60 IF NOT "%strException%" == "" ( 61 ECHO.[ INFO ] 分析Monkey日志存在: 异常 62 ECHO.[ INFO ] ------------------------------------ 63 ECHO. "%strException%" 64 SET /a blnException+=1 65 ) 66 67 IF NOT "%strFinished%" == "" ( 68 ECHO.[ INFO ] 分析Monkey日志存在: 执行成功标记 69 ECHO.[ INFO ] ------------------------------------ 70 ECHO. "%strFinished%" 71 ECHO. 72 ) ELSE ( 73 IF %blnException% EQU 0 ECHO.[ INFO ] 分析Monkey日志结果: Monkey执行异常中断,请重新执行Monkey脚本! 74 ECHO. 75 ) 76 77 REM 如果blnException不为0,说明存在异常,改变字体为淡紫色 78 IF %blnException% NEQ 0 ( 79 Color 0D 80 ECHO.[ INFO ] 分析Monkey日志结果:存在异常日志,请手工再仔细检查! 81 ECHO. 82 ) ELSE ( 83 ECHO.[ INFO ] 分析Monkey日志结果:正常 84 ECHO. 85 ) 86 ECHO. 87 ECHO.[ EXIT ] 按任意键关闭窗口... 88 PAUSE>nul
Monkey日志自动分析脚本,以及乱码解决方法,编码格式utf-8
原文:https://www.cnblogs.com/user-dahai/p/13501013.html