我正在尝试创建一个脚本,通过
adb
在一次批量操作中检索和卸载所有用户应用程序。有谁知道我怎样才能做到这一点?
我目前可以通过
列出所有第 3 方应用程序adb shell pm list packages -3
我可以以某种方式将生成的软件包列表定向到
adb
中的卸载命令吗?
尝试:
adb shell pm 列出软件包-3 |切 -d':' -f2 | t' ' ' | | xargs -r -n1 -t adb 卸载
:
r
选项将阻止 xargs 运行命令n1
选项是一次将一个结果值作为参数传递给命令t
用于打印正在执行的命令)希望有帮助!!!
问题出在哪里?可以用这一行来完成:
adb shell "pm list packages -3 | cut -c9- | xargs pm uninstall"
MacOS 13.5.2
adb 设备
所附设备列表
068162518J104381 device
adb-068162518J104381-uQtyOp._adb-tls-connect._tcp. device
adb -s 068162518J104381 外壳
TECNO-CG7n:下午列出软件包-3
package:org.iggymedia.periodtracker
package:com.alibaba.aliexpresshd
TECNO-CG7n:pm 列出软件包-3 |切-c9- | xargs -r -n1 -t pm 卸载
pm uninstall org.iggymedia.periodtracker
Success
pm uninstall com.alibaba.aliexpresshd
Success
致Ramraj的回答, 我还为 Windows 创建了命令:
adb shell "pm list packages -3 | cut -d':' -f2 | tr '\r' ' ' | xargs -r -n1 -t pm uninstall -k"