adb shell循环命令_Android adb 命令使用总结

参考文档

How ADB works        http://www.cnblogs.com/ifantastic/p/5186362.html

http://blog.csdn.net/stpeace/article/details/24933813

Adb是Android调试桥的缩写。在看Adb命令前,先弄清楚原理,一图顶千言。

总结下:无论是执行adb命令和还是调用ddmlib库都是作为adb client连接到pc上的adb server服务(默认端口为5037)。adb server服务再连接到各个设备上运行着的adbd服务(默认监听端口为5555),建立连接后adb server负责在adb client 和adbd之间转发信息。

方式一是直接通过TCP连接设备。方式二是通过USB连接设备。

Adb命令

help帮助信息

version版本信息

服务启停

adb start-server  启动adb server

adb kill-server   停止adb server

设备相关

adb devices显示所有设备(格式为 串号和状态)-l   显示qulifiers (如: product:MT7-CL00 model:HUAWEI_MT7_CL00 device:hwmt7)

adb wait-for-device  device online前一直阻塞,可以作为不需要系统完全启动就能执行的命令的前缀使用:如 adb wait-for-device shell getprop

adb get-state

adb get-serialno

adb get-devpath

adb status-window  持续显示设备状态(有变化时更新)

adb connect [:]  通过TCP网络连接设备,即上图中的方式一。(默认端口:5555)

adb disconnect [:]  断开通过网络连接的设备

adb root  以root权限重启设备上的adbd服务

adb usb  重启adbd服务,监听USB

adb tcpip  重启adbd服务,监听指定的TCP端口

adb指定目标设备选项(可以没有)

-a   所有设备

-d  USB连接的设备

-e  模拟器设备

-s 按串号指定设备

-p 不清楚

-H 指定连接的adb server主机

-P 指定连接的adb server端口

adb remout  重新以读写模式挂载/system 和 /vendor 分区

adb reboot  重启设备bootloader  重启进入bootloader模式

recovery  重启并进入recovery模式

文件传送

adb pull   把设备中的文件或目录拷贝到PC端-p  显示进度

adb push  把PC端文件或目录拷贝到设备-p  显示进度

-a  拷贝时间戳和模式

adb sync []     把PC端改动的内容拷贝到设备(默认为/system,/vendor,/data)-l 只列出,不拷贝

adb install  安装应用-r  替换

-s  安装到SD卡

可能的错误信息:

adb uninstall  移除应用-k  保留数据和缓存目录

调用Android shell命令

adb shell  进入shell环境

adb shell [shell-cmd]  执行shell命令

网络相关

adb forward  socket定向绑定:

spec格式为:

tcp:localabstract:localreserved:localfilesystem:dev:jdwp:(remote only)

--no-rebind  如果local端已经绑定则失败

adb forward --remove 移除指定的定向绑定

adb forward --remove-all

adb reverse --list  显示所有从设备发出的反向socket连接

adb reverse 反向socket绑定

spec格式为:

tcp:localabstract:localreserved:localfilesystem:

--norebind  已经绑定则失败

adb reverse --remove 移除反向绑定

adb reverse --remove-all  移除所有反向绑定

adb ppp [parm]  通过USB运行PPP

logcat

adb logcat [option] [FILTER-SPECS]  输出日志数据。可以重定向到文件:adb logcat>d:\logcat.txt

options:

-s沉默默认的过滤器,以下两种方式等效

logcat -s tagName:I

logcat tagName:I *:s

-v指定输出格式,默认为

-fLog to file

-cclear(flush) 所有log,然后退出

-ddump log,退出

-g获取log循环缓冲大小,退出

-b请求其他循环缓冲,main(default), radio, events

-Boutput log in binary

FILTER-SPECS:   tagName:[PRIORITY]...

PRIORITY:

VVerbose

DDebug

IInfo

WWarn

EError

FFatal

SSilent (supress all output)

tagName和priority都可以用*作为通配符,logcat命令中必须使用-s选项或加*:s才能过滤掉无关的log

调试相关

adb bugreport  显示dumpsys, dumppstate, logcat信息

adb jdwp  显示有效地jdwp (java debug wire protocol) 进程

其他

adb emu  模拟器控制台命令

adb backup  备份系统数据到文件-f 指定文件名(省确为backup.ab)

-apk | -noapk  是否备份.apk(默认为-noapk)

-obb | -noobb  是否备份apk扩展文件.obb,默认为noobb

-shared | -noshared  是否备份Shared Storeage,SD 卡内容(默认为noshared)

-all  备份所有安装的应用

-system|-nosystem  -all是否包括系统应用,(默认为system)

[]  要备份的应用列表。如果有-all或-shared,可以没有此项。

adb restore  从备份文件恢复数据。

adb disable-verity

adb keygen  生成密钥对,文件中存放私钥,.pub中存放公钥。已存在文件会被覆盖。

你可能感兴趣的:(adb,shell循环命令)