本文目录导读:

Windows 系统(批处理脚本)
这是最直接的方法,只需新建一个 .bat 或 .cmd 文件。
安全通用版(清理临时文件、回收站、日志)
建议优先使用这个,只清理无风险的文件。
@echo off系统垃圾清理工具(安全版) color 0A echo 正在清理系统垃圾,请稍候... :: 关闭回显,显示进度 echo [Step 1/5] 清理Windows临时文件... del /f /s /q %WINDIR%\Temp\*.* >nul 2>nul rd /s /q %WINDIR%\Temp >nul 2>nul md %WINDIR%\Temp echo [Step 2/5] 清理用户临时文件... del /f /s /q %TEMP%\*.* >nul 2>nul rd /s /q %TEMP% >nul 2>nul md %TEMP% echo [Step 3/5] 清理回收站... rd /s /q C:\$Recycle.bin >nul 2>nul echo [Step 4/5] 清理预读取文件(优化启动)... del /f /s /q %WINDIR%\Prefetch\*.* >nul 2>nul echo [Step 5/5] 清理Windows更新缓存(可选,如果您不想清理请删除此行)... :: 关闭更新服务才能彻底清理 net stop wuauserv >nul 2>nul del /f /s /q %WINDIR%\SoftwareDistribution\Download\*.* >nul 2>nul net start wuauserv >nul 2>nul echo. echo 清理完成!启动菜单和部分应用可能需要重新加载。 pause
强力深度版(清理浏览器缓存、日志、图标缓存)
如果需要清理浏览器缓存和更多深层垃圾,可以用这个:
@echo off echo 深度清理开始... :: 1. 清理Windows更新留下的备份文件(可安全删除) dism /online /Cleanup-Image /StartComponentCleanup /ResetBase :: 2. 清理系统还原点(保留最新一个) vssadmin delete shadows /for=c: /oldest :: 3. 清理Chrome和Edge浏览器缓存 rd /s /q "%LOCALAPPDATA%\Google\Chrome\User Data\Default\Cache" 2>nul rd /s /q "%LOCALAPPDATA%\Microsoft\Edge\User Data\Default\Cache" 2>nul :: 4. 清理缩略图缓存 del /f /s /q /a %USERPROFILE%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_*.db :: 5. 调用系统自带磁盘清理工具(需要手动确认扫描) cleanmgr /sageset:1 && cleanmgr /sagerun:1 echo 深度清理完成。
Linux 系统(Bash 脚本)
Ubuntu / Debian 通用版(APT包管理)
#!/bin/bash echo "开始自动清理系统垃圾..." # 清理APT缓存 sudo apt-get clean -y sudo apt-get autoclean -y sudo apt-get autoremove -y # 清理journal日志(保留最近2天) sudo journalctl --vacuum-time=2d # 清理~/.cache下的用户缓存(注意:这会清理一些应用缓存) rm -rf ~/.cache/* # 清理系统临时文件 sudo rm -rf /tmp/* # 清理缩略图缓存 rm -rf ~/.thumbnails/* echo "Linux系统垃圾清理完成。"
所有发行版通用版(清理日志、包管理缓存、snap)
#!/bin/bash
set -e # 遇到错误停止
echo "========= 全能垃圾清理脚本 ========="
# 1. 清理包管理缓存 (Fedora/RHEL用dnf,Arch用pacman)
if command -v apt-get &> /dev/null; then
sudo apt-get autoremove --purge -y
sudo apt-get clean
elif command -v dnf &> /dev/null; then
sudo dnf clean all
elif command -v pacman &> /dev/null; then
sudo pacman -Sc --noconfirm
fi
# 2. 清理旧内核(保留正在运行的内核 + 最近1个)
if command -v dpkg &> /dev/null; then
sudo apt-get autoremove --purge -y 2>/dev/null
fi
# 3. 清理Snap包缓存(如果有)
if command -v snap &> /dev/null; then
sudo snap set system refresh.retain=2 # 保留最近2个版本
sudo snap clean --list 2>/dev/null
fi
# 4. 清理日志
sudo journalctl --vacuum-size=200M # 只保留200MB日志
# 5. 清理用户目录下的临时文件
rm -rf ~/.local/share/Trash/files/*
rm -rf ~/.mozilla/firefox/*.default/cache2/* 2>/dev/null
echo "========= 清理完成 ========="
自动化与定时任务
Windows 计划任务
- 将上面的
.bat文件保存为cleanup.bat,放在一个稳定路径(如C:\Scripts\)。 - 打开 任务计划程序。
- 创建基本任务:
- 触发器:每天/每周。
- 操作:启动程序,路径选择
cleanup.bat。 - 勾选 使用最高权限运行(否则无法清理系统文件)。
Linux crontab
# 编辑定时任务 crontab -e # 添加一行,每周日凌晨3点执行 0 3 * * 0 /path/to/cleanup.sh # 如果是系统级清理,需要sudo,可以写为: 0 3 * * 0 sudo /path/to/cleanup.sh
注意:脚本文件必须先赋予执行权限:
chmod +x /path/to/cleanup.sh
注意事项(必读)
| 类型 | 注意点 |
|---|---|
| Windows脚本 | - 清理 Prefetch 可能会让刚启动的软件变慢一次。- 清理 SoftwareDistribution 会让系统重新下载更新,若网络不好请注释掉。 |
| Linux脚本 | - 清理 ~/.cache 会清空浏览器缓存、一些应用缓存,建议先确认。- 清理旧内核:不要用通配符删,用包管理器自动处理更安全。 |
| 通用 | - 脚本中使用了 del /q 或 rm -f,请测试后再投入生产。- 关注回收站和临时文件是安全的,但不推荐清理注册表(容易被脚本误伤)。 |
如果不需要自己写,推荐工具
| 系统 | 推荐工具 |
|---|---|
| Windows | BleachBit(开源,支持类似脚本的命令行模式 bleachbit_console.exe --preset --clean) |
| Linux | Stacer(GUI系统优化工具)或 sudo apt-get install localepurge(清理翻译文件) |
如需更定制化(比如只清理指定软件的缓存、清理特定路径、加入日志记录),可以告诉我您的具体场景,我帮您调整脚本。