本文目录导读:

- 方案一:使用 ADB 命令脚本(最通用)
- 方案二:使用 Android 终端模拟器 + root 脚本(手机本机运行)
- 方案三:使用自动化工具(Tasker + 脚本)
- 重要注意事项(必读)
- 总结:最稳妥的一键脚本(只清缓存版)
批量清理手机缓存通常需要借助 自动化脚本 或 ADB(Android Debug Bridge) 命令,手机系统(尤其是 iOS)对脚本权限限制很严,以下方法主要针对 Android 手机。
重要前提:
- Android 手机:需要开启“开发者选项”和“USB 调试”。
- iOS 手机:无法通过脚本批量清理,因为系统沙盒机制禁止访问其他应用缓存,只能手动在“设置-通用- iPhone存储空间”中卸载或删除应用。
以下提供几种脚本方案,从简单到高级。
使用 ADB 命令脚本(最通用)
这是最安全、最常用的方法,不需要 root,通过电脑发送命令,批量清理所有第三方应用的缓存。
环境准备
- 电脑下载 ADB 工具包(搜索“Android SDK Platform Tools”)。
- 手机开启“开发者选项” -> 开启“USB调试”。
- 手机连接电脑,在命令提示符(CMD)中输入
adb devices确认连接成功。
(批量清理所有第三方应用缓存)
Windows 批处理脚本(.bat)
创建一个 CleanCache.bat 文件,内容如下:
@echo off
echo 正在获取所有第三方应用包名...
adb shell pm list packages -3 > packages.txt
echo 开始清理缓存...
for /f "delims=:" %%i in (packages.txt) do (
adb shell pm clear %%i
)
echo 清理完成!
pause
Mac/Linux Shell 脚本(.sh)
创建一个 CleanCache.sh 文件,内容如下:
#!/bin/bash
echo "正在获取所有第三方应用包名..."
adb shell pm list packages -3 > packages.txt
echo "开始清理缓存..."
while read -r line; do
# 提取包名
package=${line#package:}
echo "清理: $package"
adb shell pm clear "$package"
done < packages.txt
echo "清理完成!"
运行方法:
- 电脑双击
.bat文件或运行sh CleanCache.sh。 - 手机会依次弹出“是否清除应用数据?”的提示(注意:这个操作会同时清除聊天记录、登录信息等,不只是缓存!),需要手动在手机上点击“确定”。
更精准的脚本(只清理缓存,不清除数据)
上述命令 pm clear 会 彻底删除应用数据(包括登录信息、聊天记录等),如果你只想清理 缓存文件(占用空间的主要来源),需要更精准的命令:
对于每个应用,执行: adb shell pm trim-caches <大小> <包名>
但手动计算大小很麻烦。推荐使用第三方工具辅助,比如手机端的“SD女佣”或电脑端的“Android工具箱”。
使用 Android 终端模拟器 + root 脚本(手机本机运行)
如果手机已 root,可以直接在手机上运行脚本,无需电脑。
安装终端模拟器(如 Termux)
授权 root 权限
在 Termux 中执行:
su
运行脚本
输入以下命令,清理所有用户应用的缓存:
for package in $(pm list packages -3 | cut -d: -f2); do
echo "清理 $package ..."
pm trim-caches 999999999 $package 2>/dev/null
done
echo "清理完成"
注意: 这个脚本可能不适用于所有厂商的系统(如小米、华为定制系统)。
使用自动化工具(Tasker + 脚本)
对于不想连电脑、也不想 root 的用户,可以使用 Tasker(自动化应用)来模拟点击清理。
步骤:
- 安装 Tasker(需要付费,或搜索破解版)。
- 创建一个 任务 -> 添加 代码(执行 shell 命令)。
- 输入:
pm clear com.android.providers.downloads.ui pm clear com.android.externalstorage
(注意:这些命令需要 Tasker 拥有 系统权限 或通过 ADB WiFi 授权,否则无法执行
pm clear。) - 将任务关联到定时或桌面快捷方式,即可一键清理。
缺点: 配置复杂,且无法针对所有应用(需要手动添加包名)。
重要注意事项(必读)
-
pm clear会删除应用数据!- 很多教程说“清理缓存”,但
pm clear实际上清除了应用的所有数据(包括登录状态、账号密码、收藏、游戏进度等)。 - 想只清缓存: 应使用
adb shell pm trim-caches或手动在“设置-应用-存储”里点“清除缓存”。 - 推荐做法: 只清理那些你觉得缓存太多、又不重要的应用(比如视频类、购物类),不要清理微信、QQ、银行等应用。
- 很多教程说“清理缓存”,但
-
MIUI/HarmonyOS 等定制系统限制
- 小米、华为、OPPO 等厂商在系统里限制了
pm clear对顶级应用(如微信、系统设置)的权限,脚本可能会失败或无法生效。
- 小米、华为、OPPO 等厂商在系统里限制了
-
非 root 手机无法清理系统缓存
- 系统缓存(如
/cache、/data/dalvik-cache)需要 root 权限才能清理,普通脚本无效。
- 系统缓存(如
-
替代推荐(避免脚本风险)
- 更安全的方式是安装 SD女佣(SD Maid,需 root)或 雪豹速清(免 root,能识别大文件)。
- 这些工具本质也是调用类似命令,但界面友好且能区分“缓存”和“数据”。
最稳妥的一键脚本(只清缓存版)
如果你只想清理 非核心应用的缓存(且手机已 root),以下脚本最安全:
#!/system/bin/sh
# 清理知名应用的缓存(只清缓存,不清数据)
for app in com.tencent.mm com.taobao.taobao com.sina.weibo com.youku.phone com.baidu.BaiduMap com.zhihu.android; do
echo "正在清理 $app 的缓存..."
# 使用 trim-caches 只清除缓存(需Android 7+)
cmd package trim-caches 9999999999 $app 2>/dev/null
done
echo "清理完成!"
注意: 此脚本需要 Android 7.0 以上,且需在 adb shell 或 Termux 已授权 root 下运行。
最后建议: 如果你不熟悉命令行,尽量不要用 pm clear 脚本,直接在手机上打开“设置-存储-缓存数据”点一下“清除”,或者用“手机管家”自带的功能,比脚本更安全。