如何使用adb卸载所有第三方用户应用程序?

use*_*258 4 android xargs adb

我正在尝试创建一个脚本,通过一个批处理操作检索和卸载所有用户应用程序adb.有谁知道我怎么能这样做?

我目前可以列出所有第三方应用程序

adb shell pm list packages -3
Run Code Online (Sandbox Code Playgroud)

我可以以某种方式将生成的软件包列表导入到卸载命令中adb吗?

Ram*_*raj 16

尝试:

adb shell pm list packages -3 | cut -d':' -f2 | tr '\r' ' ' | xargs -r -n1 -t adb uninstall
  • 第一部分是获取第三方应用程序包名称
  • 第二部分是使用分隔符拆分包名称 :
  • 第三部分是用空格替换回车(有时它会在linux机器上出现问题.尝试删除这部分并检查你是否面对它)
  • 最后一个是逐个卸载
    • r 如果没有安装第三方应用程序,选项将阻止xargs运行该命令
    • n1 option是一次将一个结果值作为参数传递给命令
    • t 用于打印正在执行的命令)

希望能帮助到你!!!

  • Mac OS X终端给了我:"xargs:非法选项 - r".我尝试删除第3部分,将错误更改为:"xargs:replacements必须是数字".我相信我的ADB设置正确. (2认同)