菜鸟科技网

adb命令集有哪些常用指令?

adb(Android Debug Bridge)命令集是Android开发者和高级用户用于与Android设备进行交互的强大工具集,通过adb命令可以实现设备调试、文件传输、应用安装、系统信息查询等多种功能,adb工具包含三个主要部分:客户端(运行在开发机上)、守护进程(运行在Android设备上)以及服务器(在客户端和守护进程间通信),掌握adb命令集能极大提升操作Android设备的效率,以下从基础命令到高级用法进行详细说明。

adb命令集有哪些常用指令?-图1
(图片来源网络,侵删)

adb的连接与设备管理是基础操作,使用adb devices命令可以查看当前连接的设备列表,设备状态包括device(已授权)、unauthorized(未授权,需在设备上确认调试权限)和offline(设备离线),若连接多台设备,可通过adb -s <设备序列号> <命令>指定目标设备,例如adb -s emulator-5554 install app.apk,启动adb服务的命令为adb start-server,停止服务则为adb kill-server,通常在设备连接异常时使用。

文件传输与操作是adb的常用功能,通过adb push <本地路径> <设备路径>可将文件从电脑推送到设备,例如adb push test.txt /sdcard/;使用adb pull <设备路径> <本地路径>则可将设备文件拉取到电脑,如adb pull /sdcard/download/ .,若需直接在设备上管理文件,可通过adb shell进入命令行环境,此时使用ls(列出文件)、cd(切换目录)、mkdir(创建目录)、rm(删除文件)等Linux命令,例如adb shell "rm /sdcard/temp/*"可删除设备指定目录下所有文件,对于大文件传输,建议确保设备存储空间充足,并避免在传输过程中断开连接。

应用管理方面,adb支持应用的安装、卸载与数据操作,安装应用使用adb install <apk路径>,若需覆盖安装旧版本可加-r参数(adb install -r app.apk),安装到系统分区则需-s参数(需root权限),卸载应用时,adb uninstall <包名>会卸载应用但保留数据,加-k参数可同时清除数据(adb uninstall -k <包名>),获取已安装应用列表可通过adb shell pm list packages,过滤特定应用则用adb shell pm list packages | grep <关键词>,启动应用需指定包名和Activity,例如adb shell am start -n com.example.app/.MainActivity,强制停止应用则用adb shell am force-stop <包名>

系统调试与监控功能对开发者尤为重要,查看设备日志是核心操作,adb logcat可实时输出系统日志,通过adb logcat -s <标签名>过滤特定标签日志(如adb logcat -s ActivityManager),保存日志到本地用adb logcat -d > log.txt,监控设备性能时,adb shell top可查看实时进程列表,adb shell dumpsys cpuinfo显示CPU占用情况,adb shell dumpsys meminfo <包名>则查看应用内存使用,截图功能通过adb shell screencap -p /sdcard/screenshot.png实现,录屏命令为adb shell screenrecord /sdcard/video.mp4,按Ctrl+C停止录屏,若需获取设备信息,adb shell getprop查看系统属性,adb shell dumpsys window显示窗口层级,adb shell settings get global airplane_mode_on则查询飞行模式状态。

adb命令集有哪些常用指令?-图2
(图片来源网络,侵删)

网络与端口转发功能适用于调试网络应用,查看设备网络连接情况用adb shell netstat,端口转发通过adb forward <本地端口> <设备端口>实现,例如adb forward tcp 8080 tcp 8080将本地8080端口映射到设备8080端口,方便本地服务与设备通信,若需抓取设备网络数据包,可结合adb shell tcpdump工具(需提前安装),例如adb shell tcpdump -p -i any -s 0 -w /sdcard/capture.pcap,抓取的数据包可通过adb pull导出到电脑分析。

高级权限与系统修改需谨慎操作,获取root权限后,可通过adb shell su切换到超级用户,执行系统级命令,例如adb shell "echo 'persist.sys.timezone=Asia/Shanghai' >> /system/build.prop"修改系统属性,备份数据使用adb backup -f backup.ab -all(备份所有应用数据),恢复数据则用adb restore backup.ab,对于已root设备,adb shell pm install-existing <包名>可重新安装已卸载的系统应用,adb shell reboot实现重启,adb shell reboot recovery则进入恢复模式。

adb命令集的灵活运用能大幅简化Android设备操作流程,以下通过表格总结常用命令:

功能分类 命令示例 说明
设备连接 adb devices 查看已连接设备
adb -s <序列号> shell 指定设备进入shell
文件操作 adb push <本地> <设备> 推送文件到设备
adb pull <设备> <本地> 从设备拉取文件到电脑
应用管理 adb install <apk路径> 安装应用
adb uninstall <包名> 卸载应用(保留数据)
日志查看 adb logcat -s <标签> 过滤并查看指定标签日志
性能监控 adb shell dumpsys meminfo <包名> 查看应用内存占用
截图/录屏 adb shell screencap -p <路径> 截图并保存到设备
网络调试 adb forward <本地端口> <设备端口> 设置端口转发
系统修改 adb shell su -c "命令" 以root权限执行系统命令

相关问答FAQs:

adb命令集有哪些常用指令?-图3
(图片来源网络,侵删)

Q1: 提示“adb: command not found”如何解决?
A: 此错误表示adb未添加到系统环境变量,解决方案:1. 下载adb工具包并解压到固定目录(如/usr/local/adb);2. 编辑环境变量配置文件(Linux/macOS下为~/.bashrc~/.zshrc,Windows下为“系统属性-高级-环境变量”),添加export PATH=$PATH:/usr/local/adb(Linux/macOS)或PATH=%PATH%;C:\path\to\adb(Windows);3. 保存后重启终端或命令行工具,输入adb version验证是否安装成功。

Q2: 如何通过adb备份应用数据并恢复到另一台设备?
A: 备份操作:在电脑上执行adb backup -f backup.ab -all -apk -shared -nosystem-all备份所有应用,-apk包含安装包,-shared备份共享存储,-nosystem排除系统应用),恢复操作:将backup.ab文件复制到目标设备连接的电脑,执行adb restore backup.ab,此时设备屏幕会弹出恢复确认界面,需手动点击“备份恢复”完成操作,注意:恢复需目标设备与备份设备系统版本兼容,且部分应用(如加密应用)可能无法完整恢复数据。

分享:
扫描分享到社交APP
上一篇
下一篇