adb shell 命令总结

  • 打印设备/模拟器上的所有软件包: adb shell pm list packages

  • 只输出系统的包: adb shell pm list packages -s

  • 只输出第三方的包: adb shell pm list packages -3

  • 使用-e参数且设置过滤条件:adb shell pm list packages -e [package_name]

  • 查看当前和用户交互的activity: adb shell dumpsys activity | grep 'mFoc'

  • 查找当前栈中的所有activity: adb shell dumpsys activity activities | grep [package_name]

  • 启动app入口程序: adb shell am start -W [package_name]/[LauncherActivity]

  • 查看当前手机机型的cpu信息: adb shell "getprop ro.product.cpu.abi"

  • 查看trace文件: /sdcard/Android/data/[package_name]/files/dmtrace.trace

  • 查看jar目录结构:jar tf test.jar

  • 杀死进程
    方法1:强制停止APP进程,不会清除APP进程在系统中产生的数据
    adb shell am force-stop package:执行该命令后没有输出,手机对应进程已被杀死。

方法2:停止APP进程,并且清除这个APP进程产生的所有数据,相当于reset
adb shell pm clear package
执行该命令后输出success即表示命令执行成功,app进程被杀死,且会清楚所有数据,相当于卸载重装的效果,一般不建议使用。

14.生成dex文件:dx --dex --output=target.dex test.jar

15.jar cvf dynamic.jar com/*(前面是包名目录)

16.查看电池状态: adb shell dumpsys battery

17.将USB充电停止: adb shell dumpsys battery unplug

18.将手机IDLE状态许可:adb shell dumpsys deviceidle enable

19.强制进入IDLE状态: adb shell dumpsys deviceidle force-idle

20.如下命令设备走出IDLE状态:adb shell dumpsys deviceidle disable

  • 排除0%的进程信息: adb shell top | grep -v '0 % S'

  • 只打印一次按cpu排序的Top 10的进程信息: adb shell top -m 10 -s cpu -n 1

  • 指定进程的cpu,内存等消耗,并设置刷新间隔: adb shell top -d 1 | grep [package_name]

  • 用PS软件形象地处理进程的身份标识信息: adb shell ps -p -t -P -x -c [PID]

  • proc下的cpu信息: cat /proc/[pid]/stat

  • 手机root下杀死进程: adb shell kill [pid]

  • 手机没有root杀死进程: adb shell am force-stop [package_name]

  • Mac查看端口占用情况: lsof -i:[port]

  • kill进程命令: kill -9 [PID]

  • 根据域名查看IP:dig [域名]

  • linux下查看静态库和动态库是32位还是64位:
    动态库:
    file ./usr/libexec/sudo_noexec.so
    静态库:
    objdump -a libmqapi.a

grep语法命令整理

1.apk反编译工具下载:dex2jar,apk-tool,jd-Gui工具下载(链接:https://pan.baidu.com/s/1OJonc_RoAkDtS2ky92T1pg)

2.解压缩dex2jar文件压缩包

3.赋予可执行权限:chmod + x d2j-dex2jar.sh d2j_invoke.sh

4.执行反编译命令:sudo shd2j-dex2jar.sh path.apk

5.查看执行命令后的结果:在dex2jar文件夹下看到生成的jar文件,使用jd-Gui工具打开jar文件即可查看.

  • 列举apk里面的所有文件:aapt l test.apk

  • 列举apk里面的所有文件以表格形式显示:aapt l -v test.apk

其中Method表示压缩形式,有:Deflate及Stored两种,即该Zip目录采用的算法是压缩模式还是存储模式;可以看出resources.arsc、*.png采用压缩模式,而其它采用压缩模式,Ratio表示压缩率,CRC-32循环冗余校验.


  • 列出apk里面详细目录里面的内容:aapt l -a test.apk

可以配合使用grep命令过滤,比如列出apk的包名:aapt l -a test.apk | grep 'package'


  • 利用aapt dump查看apk包的packageName、versionCode、applicationLabel、launcherActivity、permission等各种详细信息:aapt d badging test.apk
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容