美文网首页
dumpsys指令

dumpsys指令

作者: 我和你说过 | 来源:发表于2022-09-26 16:55 被阅读0次

    1、命令说明:

    Dumpsys用户系统诊断,它运行在设备上,并提供系统服务状态信息
    adb shell dumpsys [system serbices]
    

    查询系统支持的所有服务信息

    adb shell dumpsys –l     或者  adb shell serverce list
    

    2、参数解析

    不同的服务有不同的选项,可以通过这两个是常见的参数查看当前服务的所有参数信息

    参数 说明
    -h 对于大多数的服务,可以添加-h看到文本的帮助
    -c 对于一些服务,可以添加-c查看数据会更友好

    3、dumpsys window

    dumpsys window -h
    Window manager dump options:
     [-a] [-h] [cmd] ...
     cmd may be one of:
       l[astanr]: last ANR information
       p[policy]: policy state
       a[animator]: animator state
       s[essions]: active sessions
       surfaces: active surfaces (debugging enabled only)
       d[isplays]: active display contents
       t[okens]: token list
       w[indows]: window list
       trace: print trace status and write Winscope trace to file
     cmd may also be a NAME to dump windows.  NAME may
       be a partial substring in a window name, a
       Window hex object identifier, or
       "all" for all windows, or
       "visible" for the visible windows.
       "visible-apps" for the visible app windows.
     -a: include all available server state.
     --proto: output dump in protocol buffer format.
    msmnile_gvmq:/ $ dumpsys window l
    WINDOW MANAGER LAST ANR (dumpsys window lastanr)
     <no ANR has occurred since boot>
    

    4、dumpsys package使用

    参数 说明
    -h 查看帮助信息
    -f 打印intent filter的信息
    --checkin 打印出已经登记的库、系统功能、安装包
    msmnile_gvmq:/ $ dumpsys package -h
    Package manager dump options:
      [-h] [-f] [--checkin] [--all-components] [cmd] ...
        --checkin: dump for a checkin
        -f: print details of intent filters   //打印intent filter的信息
        -h: print this help
        --all-components: include all component names in package dump
      cmd may be one of:
        apex: list active APEXes and APEX session state
        l[ibraries]: list known shared libraries
        f[eatures]: list device features    //列出手机的功能
        k[eysets]: print known keysets
        r[esolvers] [activity|service|receiver|content]: dump intent resolvers
        perm[issions]: dump permissions  获取权限
        permission [name ...]: dump declaration and use of given permission
        pref[erred]: print preferred package settings
        preferred-xml [--full]: print preferred package settings as xml
        prov[iders]: dump content providers
        p[ackages]: dump installed packages
        q[ueries]: dump app queryability calculations
        s[hared-users]: dump shared user IDs
        m[essages]: print collected runtime messages
        v[erifiers]: print package verifier info
        d[omain-preferred-apps]: print domains preferred apps
        i[ntent-filter-verifiers]|ifv: print intent filter verifier info
        version: print database version info
        write: write current settings now
        installs: details about install sessions
        check-permission <permission> <package> [<user>]: does pkg hold perm?
        dexopt: dump dexopt state
        compiler-stats: dump compiler statistics
        service-permissions: dump permissions required by services
        <package.name>: info about given package
    

    cmd子命令

    说明

    cmd子命令 说明
    prov[iders] 获取content providers
    p[ackages] 获取安装包基本信息
    s[hared-user] 获取共享用户ID的应用
    m[essages] 打印运行时收集的信息
    v[erifiers] 打印包校验信息
    version 打印数据库版本信息
    write 写当前位置
    <package.name> 输出给定包的信息
    installs 安装会话的详细信息
    l[ibraries] 列出已知的共享库
    f[ibraries] 列出手机的功能
    k[eysets] 列出各个包的Signing KeySets
    r[esolvers] 获取intent filter
    perm[issions] 获取权限
    pref[erred] 打印包首选项
    preferred-xml [—full] 打印包首选项,xml格式打印

    5、dumpsys activity 使用

    参数 说明
    -a 包括所有可用的服务器状态
    -c 包括客户端状态
    -p 限制输出为给定的包,例如 dumpsys activity -p com.android.browser
    -h 打印帮助信息

    cmd子命令

    cmd子命令 说明
    a[ctivities] activity堆栈状态
    r[recents] 最近activity的状态
    b[rodacasts] [package_name] [histpry [-s]] 广播状态
    i[ntents] [package_name] 挂起的intent状态
    p[rocesses] [package_name] 进程状态
    o[om] oom管理
    perm[issions] url权限授权状态
    prov[iders] [comp_spec…] content provider状态
    provider [comp_spec] provider客户端状态
    s[ervices] [comp_spec…] 服务状态
    as[sociations] 跟踪应用程序的关联
    service [comp_spec] 服务客户端状态
    package [package_name] 给的包的所有状态
    all 转储所有的activityes
    top 转储栈顶的activity
    write 写入所有挂起状态存储
    track-associations 允许会话跟踪
    untrack-associations 禁用和明确会话跟踪,命令参数可能也是一个comp_spec 转储的activity

    6、网络信息查询的的dump指令

    dumpsys connectivity

    7、dumpsys meminfo [processName|pid]

    常用标识

    常用标识 说明
    Pss PSS (Proportional Set Size) = 进程独占的内存 + 进程程共享的内存 / 映射次数
    Private_Dirty Private 在上面已经说过了。 而 Dirty 分为 PageDirty和 pte_dirty. PageDirty就是所说的脏页( 文件读到内存中被修改过, 就会标记为脏页)。 pte_dirty则当 vma 用于 anonymous 的时候, 读写这段 vma 时候, 触发 page fault, 调用 do_anonymous_page , 如果vma_flags中包含 VM_WRITE, 则会通过 pte_mkdirty(entry)标记
    Private_Clean 与 Private_Dirty 相反
    Swap 一般情况下, 在 Android 中就是 zram, 通过压缩内存页面并将其放入动态分配的内存交换区来增加系统中的可用内存量, 压缩的都是匿名页
    msmnile_gvmq:/ $ dumpsys meminfo -h
    meminfo dump options: [-a] [-d] [-c] [-s] [--oom] [process]
      -a: include all available information for each process. //所有信息
      -d: include dalvik details.  //需要包含dalvik 详细信息;
      -c: dump in a compact machine-parseable representation.  //dump 成一个压缩的机器解析的表达形式;
      -s: dump only summary of application memory usage. //只dump 应用内存的概要
      -S: dump also SwapPss. //将swap pss 信息也dump 出来
      --oom: only show processes organized by oom adj.
      --local: only collect details locally, don't call process. //只在本地收集信息,只有在-a 或 -s 指定的时候才生效;
      --package: interpret process arg as package, dumping all
                 processes that have loaded that package.  //dump 所有加载指定package 的进程;
      --checkin: dump data for a checkin  //将数据dump下来checkin;
      --proto: dump data to proto   //dump proto的数据;
    If [process] is specified it can be the name or
    pid of a specific process to dump.
    

    dumpsys procstats --hours 3 获取过去三小时内应用的内存占用情况统计信息

    8、dumpsys car_service

    Android 下面可以使用的Linux执行

    1)  pwd   //显示当前工作目录
    2)  mkdir mydir  //创建工作目录
    3)  cd mydir  //更改工作目录
    4)  rmdir mydir //删除工作目录
    5)  touch myfile  //创建文件
    6)  mv myfile mydir  //移动目录或文件
    7)  cp myfile myfir  //复制目录或文件
    8)  rm -rf mydir  //删除目录或文件
    9)  ls -l myfile  //查看文件最后被编辑时间
    10) ls -lu myfile //查看文件最后被访问时间
    11) touch -at 01011212 myfile  //修改文件最后被访问时间
    12) ls //列出所有文件和目录
    13) ls -a //查看所有文件
    14) ls -i //显示文件索引节点号
    15) ls -l //详细显示
    16) ls -m //以逗号分隔
    
    文件显示
    1)  cat > myfile  //创建文件并编辑内容(ctrl+D结束编辑)
    2)  cat -n myfile  //查看文件
    3)  chmod [u/g/o/a][+/-/=][r/w/x] myfile  //更改文件权限
        u-user,g-group,o-others,a-all  .   +-添加,--删除,=-重置   .
        r-read读(4),w-write写(2),x-execute执行(1)
    4)  more myfile  //分页往后显示文件(Space空格)
    5)  less myfile  //分页自由显示文件(Page Down / Page Up)
    6)  head (-10) myfile  //指定显示文件前若干行(默认前10)
    7)  tail (-10) myfile  //指定显示文件后若干行(默认后10)
    
    文件内容操作
    1)  sort myfile  //对文件内容进行排序
    2)  sort -r myfile  //逆序
    3)  uniq myfile  //检查文件中的重复内容
    4)  grep (-c)‘a’ myfile  //在文件中查找指定内容 (显示行号)
    5)  diff myfile01 myfile02  //对不同文件进行比较
    6)  diff3 myfile01 myfile02 myfile03  //三个文件
    7)  sdiff myfile01 myfile02  //合并
    8)  cmp myfile01 myfile02  //通过字节对不同文件进行比较
    9)  comm myfile01 myfile02  //对有序文件进行比较
    10) cut -b(-c)(-d) 2(3) myfile  //对文件内容进行剪切
    11) paste myfile02 myfile01 //对文件内容进行粘贴 02-)01
    12) wc (-参数) myfile  //对文件内容进行统计 (c-字符数,w-单词数,l-行数)
    
    压缩
    1)  zip myfile.zip myfile  //压缩
    2)  zip -d myfile.zip myfile  //添加
    3)  zip -m myfile.zip myfile  //删除
    4)  unzip -o myfile.zip  //解压(覆盖)
    5)  unzip -n myfile.zip  //解压(不覆盖)
    6)  zipinfo myfile.zip  //列出压缩文件信息
    
    
    其他
    1)  clear  //清楚屏幕信息
    2)  echo xx  //显示文本  x=0  echo $x . echo -e \$x . echo $(pwd)
    3)  date  //显示日期和时间(+%y 年  +%m 月  +%d日)
    4)  cal  //显示当前日期  cal -y
    5)  ps  //查看当前进程  -A(所有)  U  lilei (用户lilei)
    6)  kill -9 2315  //终止某一进程  
    7)  ps -e | grep Jincheng
    

    df命令
    是用来查看linux系统服务器文件系统的磁盘使用情况。可以用该命令来查看已经使用了多少空间,还有多少空间可用。
    df命令格式为: df [选线] [文件名]

    参数 说明
    -a 全部文件系统列表,包含虚拟文件系统
    -a 指定显示[scale] size,比如以M,G为单位显示
    -i 列出inode的信息
    -k 区块为1024字节
    -l 显示本地文件系统

    top指令
    top 通常用top命令观察cpu、内存使用情况

    Tasks: 357 total,   1 running, 356 sleeping,   0 stopped,   0 zombie
      Mem:  9488684K total,  6240840K used,  3247844K free,  39661568 buffers
     Swap:  4194300K total,         0 used,  4194300K free,  2354256K cached
    800%cpu  60%user   7%nice  66%sys 653%idle   0%iow   8%irq   5%sirq   0%host
       PID USER         PR  NI VIRT  RES  SHR S[%CPU] %MEM     TIME+ ARGS
       504 system       -3 -20  12G  50M  32M S 35.3   0.5  23:53.00 surfaceflinger
       679 root         20   0  12G 4.5M 3.7M S 24.3   0.0  16:16.73 mcucomm
       275 logd         30  10  12G  34M 2.6M S 23.0   0.3  15:02.07 logd
       452 system       -3   0  12G  20M  15M S 12.6   0.2   8:48.28 android.hardware.graphics.composer@2.4-service
      3106 system       20   0  17G 250M 172M S 11.3   2.6   7:18.05 com.incall.apps.navi.service
      2666 u10_system    4 -16  17G 496M  99M S  9.6   5.3   6:02.94 com.incall.apps.speechassistant
      2629 u10_system   10 -10  16G 213M 124M S  7.6   2.2   5:12.33 com.incall.apps.sdalauncher
      1018 root         20   0  12G 2.3M 1.8M S  7.0   0.0   5:00.44 logcat
       461 system       20   0  12G 4.6M 3.9M D  5.3   0.0   3:24.53 android.hardware.spi@1.0-service
    
    参数 说明
    PID 进行编号
    USER 进程的持有用户
    PR 进程运行的优先级,值越小优先级越高,会越早获取CPU的执行权
    NI 进程的nice值,表示进程可被执行的优先级的修正数值
    VIRT 进程使用虚拟内存
    RES 常驻内存
    SHR 进程使用的共享内存
    S 进程运行状态。(S:休眠;D:不可中断睡眠;R:运行中;T:跟踪/停止;Z:假死中)
    %CPU 进行运行时CPU的占用比
    %MEM 进程使用的内存占用比
    TIME+ 进程占用的CPU总时长
    ARGS 进程名

    top -p :查看指定进程id的top信息
    top -p 3106

    Tasks: 1 total,   0 running,   1 sleeping,   0 stopped,   0 zombie
      Mem:  9488684K total,  6278108K used,  3210576K free,  40448000 buffers
     Swap:  4194300K total,         0 used,  4194300K free,  2374052K cached
    800%cpu  64%user   0%nice 114%sys 596%idle   7%iow  11%irq   7%sirq   0%host
       PID USER         PR  NI VIRT  RES  SHR S[%CPU] %MEM     TIME+ ARGS
      3106 system       20   0  17G 249M 172M S 17.8   2.6   7:32.93 com.incall.apps.navi.service
    

    top -H -p 3106

      TID USER         PR  NI VIRT  RES  SHR S[%CPU] %MEM     TIME+ THREAD          PROCESS
     4253 system       20   0  17G 254M 172M S  3.6   2.7   2:03.33 Map-Logical-0   com.incall.apps.navi.service
     4251 system       20   0  17G 254M 172M S  2.6   2.7   1:46.48 GNaviMap-GL-0   com.incall.apps.navi.service
     4412 system       20   0  17G 254M 172M S  2.3   2.7   0:22.92 GNaviMap-0      com.incall.apps.navi.service
     4405 system       20   0  17G 254M 172M S  2.0   2.7   0:13.44 Binder:3106_6   com.incall.apps.navi.service
     4413 system       20   0  17G 254M 172M S  1.6   2.7   0:21.08 GNaviMap-1      com.incall.apps.navi.service
     4411 system       20   0  17G 254M 172M S  0.6   2.7   0:35.35 AdrenoOsLib     com.incall.apps.navi.service
     3121 system       24   4  17G 254M 172M S  0.6   2.7   0:05.37 HeapTaskDaemon  com.incall.apps.navi.service
     4428 system       20   0  17G 254M 172M S  0.3   2.7   0:13.49 AdrenoOsLib     com.incall.apps.navi.service
     4100 system       20   0  17G 254M 172M S  0.3   2.7   0:17.45 InfTimerThread  com.incall.apps.navi.service
     4103 system       20   0  17G 254M 172M S  0.3   2.7   0:05.48 ps.navi.service com.incall.apps.navi.service
     3923 system       20   0  17G 254M 172M S  0.3   2.7   0:11.25 GPosService     com.incall.apps.navi.service
    10462 system       20   0  17G 254M 172M S  0.0   2.7   0:00.00 gnet_dns_worker com.incall.apps.navi.service
     5897 system       20   0  17G 254M 172M S  0.0   2.7   0:00.00 RxComputationTh com.incall.apps.navi.service
     5896 system       20   0  17G 254M 172M S  0.0   2.7   0:00.00 RxComputationTh com.incall.apps.navi.service
     4421 system       20   0  17G 254M 172M S  0.0   2.7   0:00.00 AdrenoOsUtils   com.incall.apps.navi.service
     4427 system       20   0  17G 254M 172M S  0.0   2.7   0:00.29 AdrenoOsUtils   com.incall.apps.navi.service
    ......
    

    相关文章

      网友评论

          本文标题:dumpsys指令

          本文链接:https://www.haomeiwen.com/subject/wfomortx.html