it编程 > 前端脚本 > Powershell

Android ADB Shell 常用命令

68人参与 2026-05-07 Powershell

1. 设备连接与排错 (device connection)

linux下无权限或无法识别设备

当linux系统无法识别android设备,或出现 no permissions 报错时,通常是 udev 规则缺失导致。

解决方法:

  1. 获取设备id

运行 lsusb 查看usb设备列表。找到你的设备(如含 “google inc.” 或厂商名)。
记录下 id 后的两组数字,例如 18d1:4ee7

  1. 配置udev规则

创建或编辑规则文件:

sudo vim /etc/udev/rules.d/90-android.rules

添加以下内容(替换为你的id):

subsystem=="usb", attrs{idvendor}=="18d1", attrs{idproduct}=="4ee7", mode="0666", group="plugdev", symlink+="android", symlink+="android_adb"
  1. 重启服务与adb
sudo udevadm control --reload-rules
sudo service udev restart
sudo udevadm trigger
adb kill-server
adb start-server

2. 应用与包管理 (package management)

主要使用 pm (package manager) 命令。

查看已安装应用

adb shell pm list packages

获取应用信息

adb shell pm path <package_name>

示例:adb shell pm path com.android.settings

adb shell dumpsys package <package_name>

此命令会输出极为详细的应用组件、权限、状态等信息。

停止与清除

adb shell am force-stop <package_name>
adb shell pm clear <package_name>

3. activity 与 service 管理 (activity manager)

主要使用 am (activity manager) 命令。

启动 activity

adb shell am start -n <package_name>/<activity_class_name> [options]

示例:

adb shell am start -n com.example.app/.mainactivity --es username "test"

发送广播 (broadcast)

adb shell am broadcast -a "<action_name>" [extras]
adb shell am broadcast -a "android.intent.action.sim_state_changed" --es "ss" "loaded"

查看当前 activity

快速确认当前显示的界面所属的 activity。

adb shell dumpsys activity top | grep activity

或者(windows下若无grep):

adb shell dumpsys activity top

然后手动查找 activity 关键字。

service 操作

adb shell service list
adb shell dumpsys activity service <service_name>

4. 文件系统与搜索 (file system & search)

android shell 支持大部分标准 linux 命令。

文本搜索 (grep)

grep -rn "search_term" <path>

查找所有包含 “error” 的日志文件:

find /sdcard/logs | xargs grep "error"

文件查找 (find)

find <path> -name "<filename_pattern>"

示例:find /system -name "*.so"

容量与结构

df -h
du -sh .
tree -l 2  # 仅显示2层深度

5. 日志与调试 (logging & debugging)

logcat 高级用法

adb logcat -v time > log.txt
adb logcat -c
adb logcat -b all

属性系统 (properties)

adb shell getprop <key>

示例:获取运营商信息 adb shell getprop ro.carrier

adb shell setprop <key> <value>

示例:允许覆盖安装系统app adb shell setprop debug.allow.persist.update true

进程信息

adb shell ps -ef | grep <app_name>
adb shell lsof -p <pid>

window manager (wm)

adb shell wm logging enable-text wm_debug_states

6. 屏幕操作 (screen operations)

屏幕截图

adb exec-out screencap -p > screenshot.png
adb shell screencap -p /sdcard/sc.png
adb pull /sdcard/sc.png

屏幕录制

adb shell screenrecord /sdcard/demo.mp4
adb shell screenrecord --time-limit 30 /sdcard/demo.mp4

注意:默认最长录制180秒。

7. 系统与工程模式 (advanced & system)

解锁 bootloader

adb reboot bootloader
fastboot flashing unlock

到此这篇关于android adb shell 常用命令的文章就介绍到这了,更多相关android adb shell 命令内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

您想发表意见!!点此发布评论

推荐阅读

Nginx从入门到精通:2026最新中文教程,覆盖安装、配置、反向代理与负载均衡

04-12

多服务器批量管理工具对比与选型:从Xshell到自动化运维

04-12

ubuntu如何添加环境变量

04-01

ubuntu系统在目录下创建文件夹,权限不足问题及解决

04-01

Zabbix 监控多线路出口IP并通过飞书告警完整教程

04-01

ubuntu18.04 nvidia驱动安装全过程

04-01

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论