文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

adb shell常用命令有哪些

2023-06-09 12:18

关注

这篇文章主要介绍adb shell常用命令有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一、文件操作相关命令

文件操作命令

子命令参数说明
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:递归创建目录
touchtouch [-alm] [-t YYYYMMDD [.HHMMSS]] < file >创建文件
rmrm [-f\|-i][-dPRrvWx]file删除文件
 -f:强制删除文件,系统不提示
 -i:交互式删除,删除前提示
 -d:改变硬连接数据删成0,删除该文件
 -r:强制删除文件夹包括里面的文件
mvmv[-fiv]source target移动文件(相当于剪切)
 -f:强制移动,若文件已经存在目标则直接覆盖
 -i:若目标文件已经存在,会询问是否覆盖
rmdirrmdir[-p] directory删除目录
 -p:递归删除目录,只能删除空目录
dddd[operand...]
 dd if =source of=targe
复制文件

文件权限命令与其他文件命令

子命令参数说明
chomdchomd[OPTION]< MODE > < FILE >文件权限修改
 -R:递归改变文件和目录
 -h:不遵循符号连接
chownchown[-R[-H\|-L\|-P]] [-fhv]
 owner : group | owner | : group file
更改某个文件或目录的属主和属组
md5md5 file...查询文件的MD5值
mountmount [-r] [-w] [-o options] [-t type] device directory挂载设备信息
umountumount < path >卸载分区挂载
cmpcmp[-b][-l][-n count] file1 file2要指出两个文件是否存在差异
lnln [-fhinsv] file1 file2
 ln [-fhinsv] file...directory
用来在文件之间创建连接,创建连接后两个文件中任意一个文件改变文件内容另一文件都会相应进行同步改变

命令使用实例:

//进入设备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下面包含4mkdir -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.txtdd 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文件的md5md5 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.txtecho 222 >>2.txt//查看2.txt文件cat 2.txt//指出两个文件是否存在差异cmp 2.txt 3.txt//复制2.txt文件夹并粘贴到当前目录中,命名为22.txtdd if=2.txt of=22.txt//指出两个文件是否存在差异cmp 2.txt 3.txtcd//在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

二、信息查询相关命令

log 相关命令

子命令参数说明
dumpstate-系统状态信息(需要root权限)
 包括手机当前的内存信息、CPU信息、logcat缓存,kenel缓存等等
 adb bugreport包含这个信息
bugreport-里面含有dmesg,dumpstate和dumpsysy
demsg-kenel的log
logcat参数较多打印日志缓冲区日志
dumpsysmeminfo [processName]
 activity [processName]
获取系统各项服务信息

获取系统信息相关命令

子命令参数说明
getevent-获取按键信息
getprop-获取系统属性
setprop-设置系统属性(需要root权限)
pm-安装包管理,查询安装包的各种信息
ps-查看进程信息
top-m num 最大显示条数
 -n num 更新次数
 -d num 两者更新时间
 -s col按哪列排序(cpu,vss,rss,thr)
 -t显示线程信息而不是进程
 -h显示帮助文档
获取CPU使用情况
procrank-查询各进行内存消耗情况(需要root权限)
wmsize获取屏幕分辨率

命令使用实例

//输出系统状态信息至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
 ......
数据备份与还原
killkill [-s signame | -signu | -signame]{job | pid | pgrp}...
 kill -l [exit_status...]
结束进程
reboot重启手机
svcpower 控制电源管理
 data 控制数据连接
 控制wifi管理
 控制USB状态
控制电源、网络、USB
wipewipe system | data | all擦除分区,恢复出厂设置
amam [subcommand] [options]
 am start
 ......
antivyty管理器
 用于开启应用,广播,服务等功能

命令使用实例

//查询已安装包名列表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//关闭wifiadb shell svc wifi disable//打开wifiadb shell svc wifi enable//擦除data,即恢复出厂设置adb shell wipe data//指定查询"mF"的activity信息adb shell dumpsys activity | find "mF"//启动指定activityadb shell am start -n com.android.browser/.BrowserActivyty//查看am命令的帮助信息adb shell am

四、测试用途相关命令

1.测试信息相关命令

子命令参数说明
iftopiftop [-r repeats] [-d delay]列出网络传输包情况
MonkeyMonkey [options] count执行Monkey命令
netstat-显示各种网络相关信息
pingping [option] ipv4因特网包探测器,用于测试网络连接量的程序
ping6ping6 [option] ipv6因特网包探测器,用于测试网络连接量的程序
screenrecordscreenrecord [options] < filename >屏幕录像(只支持android4.4以上的设备)
screencap[-hp] [-d display-id] [FILENAME]
 -p 文件保存路径
屏幕截图
uiautomatoruiautomator [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

输入信息命令

1)input

作用:模拟硬件设备的输入
格式:input []  [...]
参数:

2)命令使用实例

//进入交互模式adb shell//输入文本123456input text 123456//使用keycode num输入,keycode表可百度查询input keyevent 7//使用keycode name输入1input keyevent KEYCODE_1//使用keycode name按空格键input keyevent KEYCODE_HOME//点击坐标367 1277input tap 367 1277//从(1024,945)滑动到(134,968)200毫秒内input swipe 1024 945 134 968 200

以上是“adb shell常用命令有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯