Shell脚本 | 抓取log文件
在安卓应用的测试过程中,遇到 Crash 或者 ANR 后,想必大家都会通过 adb logcat 命令来抓取日志定位问题。如果直接使用 logcat 命令的话,默认抓取出的 log 文件包含安卓运行时产生的所有日志,给快速定位问题增加了时间成本。 这个问题可以通过一个简单的 Shell 脚本来解决,依然只有区区 20 行左右的代码。 脚本的编写思路是这样的: 以下为编写好的脚本: #!/bin/bash DATE=$(date "+%Y%m%d%H%M%S") # 读取包名 echo -n "Please enter the package name:" read package_name # 日志级别:V/D/I/W/E/F/S echo -n "Please enter the priority of log:" read priority # log命令 adb logcat -d -v long "AndroidRuntime:${priority}" "*:S" > ~/Desktop/logg/${package_name}${DATE}.log adb logcat -d -v threadtime > ~/Desktop/logg/${package_name}${DATE}_all.log # anr日志 adb pull /data/anr/traces.txt ~/Desktop/logg/ # 清空日志 adb logcat -c 运行示例: -> ./grab_log.sh Please enter the package name:com.baidu.minivideo Please enter the priority of log:E /data/anr/traces.txt: 1 file pulled. 欢迎关注微信公众号“测试开发Stack”,更多原创文章第一时间发布! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |