zoukankan      html  css  js  c++  java
  • adb logcat 通过包名过滤日志并输出到txt文件

    最近学使用ADB命令抓包APP闪退的日志;

    1)在cmd命令行中可以使用adb logcat 命令查看android系统的log,也可以使用adb shell进入到adb shell专用命令行

    2)dos窗口可以直接输入log,或定向输出到txt文件;

    3)按ctrl+c中断输入log记录;

    android输出的每一条日志都有一个标记和优先级与其关联。

    优先级是下面的字符,顺序是从低到高:
    V — 明细 verbose(最低优先级)
    D — 调试 debug
    I — 信息 info
    W — 警告 warn
    E — 错误 error
    F — 严重错误 fatal
    S — 无记载 silent

    具体每个命令的使用方法,可以查看:https://www.cnblogs.com/mgzc-1508873480/p/7116207.html

    本次的重点:

    1.如果要过滤特定级别日志,使用如下命令:

    adb logcat *:W   //显示所有优先级大于等于“warning”的日志

    2.添加包名过滤日志:

    在adb的目录下添加两个文件getpid.bat和getpid1.bat:

    1.getpid.bat

    @echo off
    adb shell "ps | grep xxx"

    其中“xxx”是包名

    2.getpid1.bat

    方法1:直接在cmd里面打印日志;日志无过滤

    @echo off
    for /f  "tokens=2 delims= " %%i in ('getpid.bat') do set pid=%%i
    echo %pid%
    adb logcat | find  "%pid%"
    pause

    方法2:直接在cmd里面打印日志;日志过滤;如过滤E及E级别以上日志;

    @echo off
    for /f  "tokens=2 delims= " %%i in ('getpid.bat') do set pid=%%i
    echo %pid%
    adb logcat *:E | find  "%pid%"
    pause

    也可以方法2上修改加入定向输出到txt文件:adb logcat *:E | find  "%pid%" > MYAPP1.txt

    运行方式:

    1.连接好手机;在cmd中输入adb devices,检测设备是否正常连接;

    PS:连接不正常,可以参考如下博文:https://www.cnblogs.com/sxming/p/7928361.html

    2.双击getpid1.bat运行; 然后打开要抓取日志的APP

    3.最后ctrl+c结束

     

     

     

     

     

  • 相关阅读:
    yolo_to_onnx ValueError: need more tan 1 value to unpack
    yolo_to_onnx killed
    C++ 实现二维矩阵的加减乘等运算
    Leetcode 1013. Partition Array Into Three Parts With Equal Sum
    Leetcode 1014. Best Sightseeing Pair
    Leetcode 121. Best Time to Buy and Sell Stock
    Leetcode 219. Contains Duplicate II
    Leetcode 890. Find and Replace Pattern
    Leetcode 965. Univalued Binary Tree
    Leetcode 700. Search in a Binary Search Tree
  • 原文地址:https://www.cnblogs.com/slowlysnail/p/8394937.html
Copyright © 2011-2022 走看看