ADB 常用命令记录

记性越来越差,除了常用的 adb 命令,现在已经处于用时查、用完忘的状态了,不如在这里做个记录,方便自己查找,本贴持续更新。

常用 adb 命令

  • 1 获取手机 log
      • `logcat`
      • `pull`
  • 2 内存相关
      • `cat /proc/meminfo`
      • `dumpsys meminfo`
  • 3 查看 cpu 信息
      • `最大频率`
      • `范围`
      • `cpu 分组`
  • 4 读写相关
      • `查看 flash 类型`

1 获取手机 log

输出符 > :通过该符号可以将日志保存到本地,> 后面跟的是本地的日志保存路径。比如下面命令,将日志保存到文件 E:\log.txt 下:

adb shell logcat > E:\log.txt

logcat

-b: 筛选输出日志类型

#筛选 main 日志
logcat -b main

#筛选 system 日志
logcat -b system

#筛选 event 日志
logcat -b events

-v: 设置输出格式

#显示日志的输出时间
logcat -v time

#日志的输出时间和线程信息
logcat -v threadtime

pull

直接拖出相关文件到本地,当然也可以用来获取日志了。
比如,获取手机 data 目录下的 anr 日志到本地。

adb pull /data/anr

2 内存相关

cat /proc/meminfo

会显示 MemTotal、MemFree、file 等信息

dumpsys meminfo

会打印出各种类型的进程已经各进程的内存占用情况
这个打印的有点多,总体情况只需要看最后几行就行。

Total RAM: 7,607,500K (status normal)
 Free RAM: 4,658,462K (  429,666K cached pss + 3,600,920K cached kernel +         0K cached ion +   627,876K free)
      ION:   341,268K (   14,972K mapped +   326,296K unmapped +         0K pools)
 Used RAM: 4,371,869K (3,173,725K used pss + 1,198,144K kernel)
 Lost RAM:   301,243K
     ZRAM:   324,260K physical used for 1,590,760K in swap (6,291,452K total swap)
   Tuning: 256 (large 512), oom 1,451,520K, restore limit   107,520K (high-end-gfx)

查看某个进程或包名对应的内存信息,比如通过微信包名查看

dumpsys meminfo pid
dumpsys meminfo package

ADB 常用命令记录_第1张图片
cat /proc/进程id/oom_adj:查看进程当前adj

3 查看 cpu 信息

主要是查看 /sys/devices/system/cpu 目录下的信息,可以进入每个 cpu 下查看各自的信息。

vangogh:/sys/devices/system/cpu $ ls
core_ctl_isolated  cpu2  cpu5  cpu_boost  hotplug     modalias  possible  uevent
cpu0               cpu3  cpu6  cpufreq    isolated    offline   power     vulnerabilities
cpu1               cpu4  cpu7  cpuidle    kernel_max  online    present

比图 cpu0 的目录下,可以查看当前频率、最高、最低频率等。
在这里插入图片描述
也可以直接在 cpufreq 目录下,查看整体信息。

最大频率

vangogh:/ $ cat sys/devices/system/cpu/cpufreq/policy*/scaling_max_freq
1804800
2208000
2400000

范围

vangogh:/ $ cat sys/devices/system/cpu/cpufreq/policy*/scaling_available_frequencies                                              <
300000 576000 614400 864000 902400 1363200 1516800 1651200 1804800
652800 940800 1094400 1478400 1728000 1900800 2092800 2208000
806400 1094400 1401600 1766400 1996800 2188800 2304000 2400000

cpu 分组

#后台系统进程
vangogh:/ $ cat /dev/cpuset/system-background/cpus
0-3
#后台进程
vangogh:/ $ cat /dev/cpuset/background/cpus
0-2
#前台进程
vangogh:/ $ cat /dev/cpuset/foreground/cpus
0-2,4-7
#
vangogh:/ $ cat /dev/cpuset/top-app/cpus
0-7
#
vangogh:/ $ cat /dev/cpuset/restricted/cpus
0-7

4 读写相关

查看 flash 类型

下面两个命令,如果对应有输出的话,则为该类型的 flash

#是否为 emmc
ls -l sys/class/block |grep mmc
#是否为 ufs
ls -l sys/class/block |grep sda

比如,我这个手机就是使用的 ufs
在这里插入图片描述

你可能感兴趣的:(Android开发,android,adb命令,cpu,内存)