adb shell常用命令总结
一、文件操作相关命令
1.文件操作命令
| 子命令 | 参数 | 说明 |
|---|---|---|
| cd | 无 | 进入目录 |
| cat | [-beflnstuv] [-B bsize] [file...] | 查看文件内容 -n:显示行号 -b:显示行号,但会忽略空行 -s:显示行号,连续空行标记为一行 |
| df | 无 | 列出分区列表 |
| du | [-H] [-L] [-P] [-a] [-d depth] [-s] [-cghikmnrx] [file...] | 查询文件或目录的磁盘使用空间 |
| ls | [-a] [-i] [-l] [-n] [-s] | 列出目录内容 -a:列出所有文件,包括隐藏文件 -i:输出文件的i节点的索引信息 -l列出文件的详细信息 -n:用数字的GUID代替名称 -s:输出该文件的大小 |
| grep | [-abcDEFGHhliJLlmnOoPqRSsUVvwxZz] [-A num] [-B num] [-C[num] [-e pattern] [-f file] [--binary-files=value] [--color=when] [--context=num] [--directories=action] [--lable] [--line-buffered] [pattern] [file...] |
指定文件中搜索特定的内容,并将含有这些内容的行标准输出 |
| mkdir | -p,-parents | 创建目录 -p,--parents:递归创建目录 |
| touch | touch [-alm] [-t YYYYMMDD [.HHMMSS]] < file > | 创建文件 |
| rm | rm [-f\|-i][-dPRrvWx]file | 删除文件 -f:强制删除文件,系统不提示 -i:交互式删除,删除前提示 -d:改变硬连接数据删成0,删除该文件 -r:强制删除文件夹包括里面的文件 |
| mv | mv[-fiv]source target | 移动文件(相当于剪切) -f:强制移动,若文件已经存在目标则直接覆盖 -i:若目标文件已经存在,会询问是否覆盖 |
| rmdir | rmdir[-p] directory | 删除目录 -p:递归删除目录,只能删除空目录 |
| dd | dd[operand...] dd if =source of=targe |
复制文件 |
2.文件权限命令与其他文件命令
| 子命令 | 参数 | 说明 |
|---|---|---|
| chomd | chomd[OPTION]< MODE > < FILE > | 文件权限修改 -R:递归改变文件和目录 -h:不遵循符号连接 |
| chown | chown[-R[-H\|-L\|-P]] [-fhv] owner : group | owner | : group file |
更改某个文件或目录的属主和属组 |
| md5 | md5 file... | 查询文件的MD5值 |
| mount | mount [-r] [-w] [-o options] [-t type] device directory | 挂载设备信息 |
| umount | umount < path > | 卸载分区挂载 |
| cmp | cmp[-b][-l][-n count] file1 file2 | 要指出两个文件是否存在差异 |
| ln | ln [-fhinsv] file1 file2 ln [-fhinsv] file...directory |
用来在文件之间创建连接,创建连接后两个文件中任意一个文件改变文件内容另一文件都会相应进行同步改变 |
3.命令使用实例:
//进入设备
adb shell
//进入指定目录"/data/local/tmp"
cd /data/local/tmp
//查看目录
ls
//进入根目录
cd /
//进入指定目录"/data/local/tmp"
cd /data/local/tmp
//查看分区列表
df
//在当前目录下创建名为1的.txt文件(再创建个两个,命名为2和3,方便后面继续学习使用)
touch 1.txt
//列出所有文件(包括隐藏文件)的详细信息,此时可以查看刚刚的1.txt是否创建成功
ls -al
//在当前目录下创建一个名为1的文件夹
mkdir1
//列出所有文件(包括隐藏文件)的详细信息,此时可以查看刚刚的目录文件夹是否创建成功
ls -al
//在当前目录下创建递归目录,2下面包含3,3下面包含4
mkdir -p 2/3/4
//回到上一级目录,连续操作两次让他回到cd /data/local/tmp目录下
cd ..
//将1.txt文件移动到1目录中(剪切效果)
mv 1.txt 1
//进入1目录cd 1
//查看1.txt是否移动进去了
ls
//返回上一级目录
cd ..
//将当前目录下的2.txt文件复制到名为2的目录下并命名为2.txt
dd if=2.txtof=2/22.txt
//进入到目录2中
cd 2
//查看上个文件操作是否操作成功
ls
//回到上一级目录
cd ..
//进入1目录
cd 1
//删除当前目录下的1.txt文件
rm 1.txt
//回到上一级目
cd ..
//删除名为1的目录
rmdir 1
//查看删除操作是否删除成功
ls
//查看文件权限信息
la -al
//修改2.txt的文件权限为最高
chomd 777 2.txt
//查看刚刚修改的文件权限信息是否成功
la -al
//查看2.txt文件的md5
md5 2.txt
//查看挂载设备信息
mount
//将system分区变成可读可写"mount -o [option] devices directory"
mount -o remount,rw /dev/block/sda6 /system
//查看刚刚的修改是否成功
mount
//查看分区列表
df
//卸载掉"/storage/sdcard"分区挂载
umount /storage/sdcard
//查看刚刚的卸载是否成功
df
//输入点内容到2.txt中
echo 333 >>2.txt
echo 222 >>2.txt
//查看2.txt文件
cat 2.txt
//指出两个文件是否存在差异
cmp 2.txt 3.txt
//复制2.txt文件夹并粘贴到当前目录中,命名为22.txt
dd if=2.txt of=22.txt
//指出两个文件是否存在差异
cmp 2.txt 3.txt
cd
//在2目录下创建一个名为2o.txt的2的硬连接文件(因为2的目录下已经存在2.txt文件,不然使用"ln 2.txt 2"命令就可以了)
ln 2.txt 2/2o.txt
//进入到2目录
cd 2
//查看2o.txt文件内容
cat 2o.txt
//在2o.txt文件中加入内容
echo >>2o.txt
//返回上一级目录
cd ..
//查看连接文件2.txt的文件内容是否与2o.txt一致
cat 2.txt
二、信息查询相关命令
1.log 相关命令
| 子命令 | 参数 | 说明 |
|---|---|---|
| dumpstate | - | 系统状态信息(需要root权限) 包括手机当前的内存信息、CPU信息、logcat缓存,kenel缓存等等 adb bugreport包含这个信息 |
| bugreport | - | 里面含有dmesg,dumpstate和dumpsysy |
| demsg | - | kenel的log |
| logcat | 参数较多 | 打印日志缓冲区日志 |
| dumpsys | meminfo [processName] activity [processName] |
获取系统各项服务信息 |
2.获取系统信息相关命令
| 子命令 | 参数 | 说明 |
|---|---|---|
| getevent | - | 获取按键信息 |
| getprop | - | 获取系统属性 |
| setprop | - | 设置系统属性(需要root权限) |
| pm | - | 安装包管理,查询安装包的各种信息 |
| ps | - | 查看进程信息 |
| top | -m num 最大显示条数 -n num 更新次数 -d num 两者更新时间 -s col按哪列排序(cpu,vss,rss,thr) -t显示线程信息而不是进程 -h显示帮助文档 |
获取CPU使用情况 |
| procrank | - | 查询各进行内存消耗情况(需要root权限) |
| wm | size | 获取屏幕分辨率 |
3.命令使用实例
//输出系统状态信息至F:\test\dumpstate.txt,由于需要root权限,所以没root的过的手机输出为空
adb shell dumptate >F:\test\dumpstate.txt
//输出过去系统的状态,log,一般操作过程中未抓取log的时候一旦出现问题就使用这个命令来查看
adb shell bugreport >F:\test\bugreport.txt
//输出内核信息
adb shell dmesg
//输出当前缓冲区日志 并保存
adb shell logcat >F:\test\bugreport.txt
//输出内存信息
adb shell dumpsys meminfo
//输出当前CPU使用情况信息
adb shell dumpsys cpuinfo
//输出当前activity使用情况信息
adb shell dumpsys activity
//相当于过滤,只找名为"mF"的activity使用情况信息
adb shell dumpsys activity | find "mF"
//获取按键信息,在手机没有按键 信息的情况下会先提示你每个设备的ID代表的设备信息,按键过程中会实时刷新
adb shell getevent
//获取系统属性
adb shell getprop
//查看pm帮助信息
adb shell pm
//查看手机内的安装包列表
adb shell pm list packages
//查看当前手机进程信息
adb shell ps
//获取cpu使用情况,只查看一次,不实时刷新
adb shell top -n 1
//获取前十的cpu使用情况,只查看一次,不实时刷新
adb shell top -n 1 -m 10
//查询各进行内存消耗情况
adb shell procrank
//详细查询某个包的内存使用情况
adb shell dumpsys meminfo packageName
三、操作手机相关命令
1.相关命令
| 子命令 | 参数 | 说明 |
|---|---|---|
| bmgr | [backup | restore | list | transport | run] bmgr backup PACKAGE bmgr restore ...... |
数据备份与还原 |
| kill | kill [-s signame | -signu | -signame]{job | pid | pgrp}... kill -l [exit_status...] |
结束进程 |
| reboot | 无 | 重启手机 |
| svc | power 控制电源管理 data 控制数据连接 控制wifi管理 控制USB状态 |
控制电源、网络、USB |
| wipe | wipe system | data | all | 擦除分区,恢复出厂设置 |
| am | am [subcommand] [options] am start ...... |
antivyty管理器 用于开启应用,广播,服务等功能 |
2.命令使用实例
//查询已安装包名列表
adb shell pm list package
//对com.tencent.mm包使用monkey命令
adb shell monkey -p com.tencent.mm --throttle 200 50000
//查找monkey进程信息
adb shell ps | find "monkey"
//杀掉monkey进程,例子中的数字是monkey的PID进程号
adb shell kill 23770
//重启手机
adb shell reboot
//打开svc帮助界面
adb shell svc
//查询wifi操作帮助
adb shell svc wifi
//关闭wifi
adb shell svc wifi disable
//打开wifi
adb shell svc wifi enable
//擦除data,即恢复出厂设置
adb shell wipe data
//指定查询"mF"的activity信息
adb shell dumpsys activity | find "mF"
//启动指定activity
adb shell am start -n com.android.browser/.BrowserActivyty
//查看am命令的帮助信息
adb shell am
四、测试用途相关命令
1.测试信息相关命令
| 子命令 | 参数 | 说明 |
|---|---|---|
| iftop | iftop [-r repeats] [-d delay] | 列出网络传输包情况 |
| Monkey | Monkey [options] count | 执行Monkey命令 |
| netstat | - | 显示各种网络相关信息 |
| ping | ping [option] ipv4 | 因特网包探测器,用于测试网络连接量的程序 |
| ping6 | ping6 [option] ipv6 | 因特网包探测器,用于测试网络连接量的程序 |
| screenrecord | screenrecord [options] < filename > | 屏幕录像(只支持android4.4以上的设备) |
| screencap | [-hp] [-d display-id] [FILENAME] -p 文件保存路径 |
屏幕截图 |
| uiautomator | uiautomator [options] | 执行uiautomator脚本 |
- 命令使用实例:
//进入交互模式
adb shell
//列出网络传输包情况
iftop
//显示各种网络相关信息
netstat
//实时查看网络连接量
ping www.baidu.com
//实时查看网络连接量
ping6 www.baidu.com
//屏幕录像,保存路径为/mnt/sdcard/1.mp4,需要注意的是屏幕录像只支持android4.4以上的设备使用ctrl+c停止录像
screenrecord /mnt/sdcard/1.mp4
//将sd卡路径下的1.mp4导出到F盘(先退出交互模式)
adb pull /mnt/sdcard/1.mp4 f:\
//截图
screencap /mnt/sdcard/1.png
2.输入信息命令
1)input
作用:模拟硬件设备的输入
格式:input [] [...]
参数:
test(Defalt;touchscreen)
keyevent [--longpress] ...(Default:keyboard)
tap (Default:touchscreen)
swipe [duration(ms)] (Default:touchscreen)
press (Default:trackball)
roll (Default:trackball)
2)命令使用实例
//进入交互模式
adb shell
//输入文本123456
input text 123456
//使用keycode num输入,keycode表可百度查询
input keyevent 7
//使用keycode name输入1
input keyevent KEYCODE_1
//使用keycode name按空格键
input keyevent KEYCODE_HOME
//点击坐标367 1277
input tap 367 1277
//从(1024,945)滑动到(134,968)200毫秒内
input swipe 1024 945 134 968 200
adb shell常用命令总结的更多相关文章
- 移动端 - adb shell常用命令
一.文件操作相关命令 //进入设备 adb shell //进入指定目录"/data/local/tmp" cd /data/local/tmp //查看目录 ls //进入根目录 ...
- Android adb shell 常用命令
Ø 简介 adb 命令是 Android SDK 中自带的一个调试工具,可以调试电脑中的手机或者模拟器,使用 adb 命令前需要将 sdk 中的 platform-tools 目录添加到环境变量中. ...
- adb shell常用命令
一.文件操作相关命令 1.文件操作命令 子命令 参数 说明 cd 无 进入目录 cat [-beflnstuv] [-B bsize] [file...] 查看文件内容-n:显示行号-b:显示行号,但 ...
- Appium无线连接安卓终端方法 + ADB Shell常用命令(持续更新)
ADB无线连接手机的方法1)手机与PC有线相连 - 检查是否连接正常: adb devices - 执行以下命令:adb tcpip 5555 # 当前9001 - 成功提示:restar ...
- Adb shell 常用命令
1. 查看IP adb shell netcfg 2. 查看挂载设备 adb devices 3. 将本地端口转发至手机端口 adb forward tcp: tcp: // PC上所有6100端口通 ...
- 安卓性能测试之 adb shell 常用命令
pm list packages 列出包名adb shell pm list packages:列出所有的包名.adb shell dumpsys package:列出所有的安装应用的信息adb sh ...
- (转)Hbase shell 常用命令(1)
Hbase shell 常用命令(1) link:http://blog.csdn.net/scutshuxue/article/details/6988348 下面我们看看HBase Shell的一 ...
- win7 cmd终端连接android手机运行adb shell脚本命令
win7 cmd终端连接android手机运行adb shell脚本命令 (2013-03-22 20:13:57) 转载▼ 标签: android it shell 连接 linux 分类: 嵌入式 ...
- Shell 常用命令总结
Shell常用命令总结 1 ls命令:列出文件 ls -la 列出当前目录下的所有文件和文件夹 ls a* 列出当前目录下所有以a字母开头的文件 ls -l *.txt 列出当前目录下所有后缀名 ...
随机推荐
- 解决pycharm运行py文件时只有unittest选项的方法
有时候在编完脚本开始运行时,发现某个py脚本右键运行的选项不是run,二是run in unittest,试过很多方法都不能很好的去除,主要是因为脚本中含有test字符串,一种解决方法是将脚本中所有的 ...
- 12 | 为什么我的MySQL会“抖”一下? 学习记录
<MySQL实战45讲>12 | 为什么我的MySQL会“抖”一下? 学习记录 http://naotu.baidu.com/file/15aa54cab2fa882c6a2a1dd52e ...
- Ubuntu下批量使用Tecplot的preplot命令对数据进行处理
首先把.PLT文件后缀批量修改为.dat rename 's/.PLT$/.dat/' *.PLT 对所有.dat文件批量执行preplot find ./ -name "*.dat&quo ...
- Python之批量读取文件【面试必学】
python的os模块可以实现普遍的操作系统功能,并且和平台无关.以下为实现根目录下文件的批量读取. os.listdir(dirname)可以列出dirname下的目录和文件,依次读取相应的文件即可 ...
- chrles设置断点
1.选择你要断点的接口,右键Breakpoints 2.配置断点接口proxy>Breakpoint settings query设置为* 3.开始断点,重新抓取接口 修改入参.请求头 修改出参 ...
- Jenkines邮件中添加图片
1.在Jenkins的邮件插件 Email-ext中的Default Content内容编写html文件,简单模板如下: <html> <head> </head&g ...
- 【HDOJ6665】Calabash and Landlord(dfs)
题意:二维平面上有两个框,问平面被分成了几个部分 x,y<=1e9 思路:分类讨论可以 但数据范围实在太小了,离散化以后随便dfs一下 #include<bits/stdc++.h> ...
- Flutter中的浮动按钮 FloatingActionButton
FloatingActionButton 简称 FAB ,可以实现浮动按钮,也可以实现类似闲鱼 app 的底部凸起导航 . 常用属性 FloatingActionButton的常用属性,同flutte ...
- Solr索引数据
一般来说,索引是系统地排列文档或(其他实体).索引使用户能够在文档中快速地查找信息. 索引集合,解析和存储文档. 索引是为了在查找所需文档时提高搜索查询的速度和性能. 在Apache Solr中的索引 ...
- PHP读取XML文件数据获取节点值
最近在接入渠道的时候遇到接口返回是xml数据.现在接口数据返回json数据格式比较常见. 如何获取xml里面真正数据? 对象结果集合单个值的强制转换处理.(直接代码说明) demo示例: 创建xml ...