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)
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 []: does pkg hold perm?
dexopt: dump dexopt state
compiler-stats: dump compiler statistics
service-permissions: dump permissions required by services
: info about given package
cmd子命令
说明
cmd子命令 | 说明 |
---|---|
prov[iders] | 获取content providers |
p[ackages] | 获取安装包基本信息 |
s[hared-user] | 获取共享用户ID的应用 |
m[essages] | 打印运行时收集的信息 |
v[erifiers] | 打印包校验信息 |
version | 打印数据库版本信息 |
write | 写当前位置 |
输出给定包的信息 | |
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 [email protected]
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 [email protected]
参数 | 说明 |
---|---|
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
......