WINDOWS 清理垃圾的 批处理bat脚本

win11版本

bash 复制代码
@echo off
:: 设置控制台为UTF-8编码,避免乱码
chcp 65001 >nul

:: 设置日志文件路径
set "logFile=%userprofile%\Desktop\SystemCleanupLog.txt"
echo %date% %time% - 系统垃圾清理日志 > "%logFile%"

:: 清理Windows临时文件
echo 正在清理Windows临时文件夹...
echo %date% %time% - 清理Windows临时文件夹 >> "%logFile%"
del /f /s /q "%temp%\*" >nul 2>&1
rd /s /q "%temp%" >nul 2>&1
mkdir "%temp%" >nul 2>&1
echo Windows临时文件夹清理完成。
echo %date% %time% - Windows临时文件夹清理完成 >> "%logFile%"

:: 清理用户临时文件
echo 正在清理用户临时文件夹...
echo %date% %time% - 清理用户临时文件夹 >> "%logFile%"
for /d %%x in ("%systemdrive%\*\Users\*\AppData\Local\Temp") do (
    rd /s /q "%%x" >nul 2>&1
)
echo 用户临时文件夹清理完成。
echo %date% %time% - 用户临时文件夹清理完成 >> "%logFile%"

:: 清理系统日志文件
echo 正在清理系统日志文件...
echo %date% %time% - 清理系统日志文件 >> "%logFile%"
for /r "%systemdrive%" %%f in (*.log, *.bak, *.old, *.tmp, *.temp) do (
    del /f /q "%%f" >nul 2>&1
)
echo 系统日志文件清理完成。
echo %date% %time% - 系统日志文件清理完成 >> "%logFile%"

:: 清理缓存文件
echo 正在清理缓存文件...
echo %date% %time% - 清理缓存文件 >> "%logFile%"
for /r "%systemdrive%" %%f in (*.cache) do (
    del /f /q "%%f" >nul 2>&1
)
echo 缓存文件清理完成。
echo %date% %time% - 缓存文件清理完成 >> "%logFile%"

:: 清理浏览器缓存(以Chrome为例)
echo 正在清理浏览器缓存...
echo %date% %time% - 清理浏览器缓存 >> "%logFile%"
set "chromeCache=%userprofile%\AppData\Local\Google\Chrome\User Data\Default\Cache"
if exist "%chromeCache%" (
    del /f /s /q "%chromeCache%\*" >nul 2>&1
)
echo Chrome缓存清理完成。
echo %date% %time% - 清理 Chrome 缓存完成 >> "%logFile%"

:: 清理IE缓存
set "ieCache=%userprofile%\AppData\Local\Microsoft\Windows\Temporary Internet Files"
if exist "%ieCache%" (
    del /f /s /q "%ieCache%\*" >nul 2>&1
)
echo IE缓存清理完成。
echo %date% %time% - 清理 IE 缓存完成 >> "%logFile%"

:: 清理Firefox缓存
set "firefoxCache=%userprofile%\AppData\Local\Mozilla\Firefox\Profiles\*\cache2"
if exist "%firefoxCache%" (
    del /f /s /q "%firefoxCache%\*" >nul 2>&1
)
echo Firefox缓存清理完成。
echo %date% %time% - 清理 Firefox 缓存完成 >> "%logFile%"

:: 清理Edge缓存
set "edgeCache=%userprofile%\AppData\Local\Microsoft\Edge\User Data\Default\Cache"
if exist "%edgeCache%" (
    del /f /s /q "%edgeCache%\*" >nul 2>&1
)
echo Edge缓存清理完成。
echo %date% %time% - 清理 Edge 缓存完成 >> "%logFile%"

:: 清理系统备份文件
echo 正在清理系统备份文件...
echo %date% %time% - 清理系统备份文件 >> "%logFile%"
for /r "%systemdrive%" %%f in (*.bak, *.old) do (
    del /f /q "%%f" >nul 2>&1
)
echo 系统备份文件清理完成。
echo %date% %time% - 系统备份文件清理完成 >> "%logFile%"

:: 清理系统回收站
echo 正在清理系统回收站...
echo %date% %time% - 清理系统回收站 >> "%logFile%"
rd /s /q "%systemdrive%\$Recycle.Bin" >nul 2>&1
md "%systemdrive%\$Recycle.Bin" >nul 2>&1
echo 系统回收站清理完成。
echo %date% %time% - 系统回收站清理完成 >> "%logFile%"

:: 清理Windows Update缓存
echo 正在清理Windows Update缓存...
echo %date% %time% - 清理Windows Update缓存 >> "%logFile%"
set "wuCache=%systemroot%\SoftwareDistribution\Download"
if exist "%wuCache%" (
    del /f /s /q "%wuCache%\*" >nul 2>&1
)
echo Windows Update缓存清理完成。
echo %date% %time% - 清理 Windows Update 缓存完成 >> "%logFile%"

:: 清理Windows Defender缓存
echo 正在清理Windows Defender缓存...
echo %date% %time% - 清理Windows Defender缓存 >> "%logFile%"
set "defenderCache=%ProgramData%\Microsoft\Windows Defender\Scans\Cache"
if exist "%defenderCache%" (
    del /f /s /q "%defenderCache%\*" >nul 2>&1
)
echo Windows Defender缓存清理完成。
echo %date% %time% - 清理 Windows Defender 缓存完成 >> "%logFile%"

echo 所有清理操作已完成。
echo %date% %time% - 所有清理操作已完成 >> "%logFile%"
pause

win7版本

bash 复制代码
@echo off
echo 正在清理系统垃圾文件,请稍候...

:: 设置日志文件路径
set "logFile=%userprofile%\Desktop\SystemCleanupLog.txt"
echo %date% %time% - 系统垃圾清理日志 > "%logFile%"

:: 清理Windows临时文件
echo 清理Windows临时文件夹...
echo %date% %time% - 清理Windows临时文件夹 >> "%logFile%"
del /f /s /q %temp%\* >nul 2>&1
rd /s /q %temp% >nul 2>&1
mkdir %temp% >nul 2>&1
echo %date% %time% - Windows临时文件夹清理完成 >> "%logFile%"

:: 清理用户临时文件
echo 清理用户临时文件夹...
echo %date% %time% - 清理用户临时文件夹 >> "%logFile%"
for /d %%x in (%systemdrive%\*\Users\*\AppData\Local\Temp) do (
    rd /s /q "%%x" >nul 2>&1
    echo %date% %time% - 清理 %%x >> "%logFile%"
)
echo %date% %time% - 用户临时文件夹清理完成 >> "%logFile%"

:: 清理系统日志文件
echo 清理系统日志文件...
echo %date% %time% - 清理系统日志文件 >> "%logFile%"
for /r %systemdrive% %%f in (*.log, *.bak, *.old) do (
    del /f /q "%%f" >nul 2>&1
    echo %date% %time% - 删除 %%f >> "%logFile%"
)
echo %date% %time% - 系统日志文件清理完成 >> "%logFile%"

:: 清理缓存文件
echo 清理缓存文件...
echo %date% %time% - 清理缓存文件 >> "%logFile%"
for /r %systemdrive% %%f in (*.cache) do (
    del /f /q "%%f" >nul 2>&1
    echo %date% %time% - 删除 %%f >> "%logFile%"
)
echo %date% %time% - 缓存文件清理完成 >> "%logFile%"

:: 清理临时文件
echo 清理临时文件...
echo %date% %time% - 清理临时文件 >> "%logFile%"
for /r %systemdrive% %%f in (*.tmp, *.temp) do (
    del /f /q "%%f" >nul 2>&1
    echo %date% %time% - 删除 %%f >> "%logFile%"
)
echo %date% %time% - 临时文件清理完成 >> "%logFile%"

:: 清理浏览器缓存(以Chrome为例)
echo 清理浏览器缓存...
echo %date% %time% - 清理浏览器缓存 >> "%logFile%"
set "chromeCache=%userprofile%\AppData\Local\Google\Chrome\User Data\Default\Cache"
if exist "%chromeCache%" (
    del /f /s /q "%chromeCache%\*" >nul 2>&1
    echo %date% %time% - 清理 Chrome 缓存完成 >> "%logFile%"
)

:: 清理IE缓存
set "ieCache=%userprofile%\AppData\Local\Microsoft\Windows\Temporary Internet Files"
if exist "%ieCache%" (
    del /f /s /q "%ieCache%\*" >nul 2>&1
    echo %date% %time% - 清理 IE 缓存完成 >> "%logFile%"
)

:: 清理Firefox缓存
set "firefoxCache=%userprofile%\AppData\Local\Mozilla\Firefox\Profiles\*\cache2"
if exist "%firefoxCache%" (
    del /f /s /q "%firefoxCache%\*" >nul 2>&1
    echo %date% %time% - 清理 Firefox 缓存完成 >> "%logFile%"
)

:: 清理Edge缓存
set "edgeCache=%userprofile%\AppData\Local\Microsoft\Edge\User Data\Default\Cache"
if exist "%edgeCache%" (
    del /f /s /q "%edgeCache%\*" >nul 2>&1
    echo %date% %time% - 清理 Edge 缓存完成 >> "%logFile%"
)

:: 清理系统备份文件
echo 清理系统备份文件...
echo %date% %time% - 清理系统备份文件 >> "%logFile%"
for /r %systemdrive% %%f in (*.bak, *.old) do (
    del /f /q "%%f" >nul 2>&1
    echo %date% %time% - 删除 %%f >> "%logFile%"
)
echo %date% %time% - 系统备份文件清理完成 >> "%logFile%"

:: 清理系统回收站
echo 清理系统回收站...
echo %date% %time% - 清理系统回收站 >> "%logFile%"
rd /s /q %systemdrive%\$Recycle.Bin >nul 2>&1
md %systemdrive%\$Recycle.Bin >nul 2>&1
echo %date% %time% - 系统回收站清理完成 >> "%logFile%"

echo 清理完成。
echo %date% %time% - 清理完成 >> "%logFile%"
pause
相关推荐
m0_535817556 小时前
从0到1上手Claude Code:Windows安装+88api配置全流程
windows·gpt·node.js·claude·claudecode·88api
阿昭L9 小时前
Windows用户态hook技术总结
windows·逆向·hook
fengchengwu201212 小时前
Jupyter 安装与使用指南:从环境配置到效率翻倍
ide·windows·jupyter
呉師傅12 小时前
东芝e-STUDIO 3525ac提示黄色和品红色墨粉盒在耗尽前被更换。请重新插入之前的墨粉盒并用至耗尽如何操作
运维·windows·电脑
玖釉-13 小时前
二叉树展开为链表:从先序遍历到原地指针重排
c++·windows·算法·leetcode·链表
MinterFusion13 小时前
如何在Windows下查看某个文件的MD5和SHA256值(v0.1.0)
windows·md5·sha256·系统运维·明德融创
idolao15 小时前
Autodesk Alias AutoStudio 2025安装教程 Windows版:自定义路径指南
windows
霸道流氓气质16 小时前
Windows 图形界面配置 Ollama 镜像地址完整教程
windows·ollama
Cheng小攸17 小时前
2.隐藏账户
windows
吃胖点儿18 小时前
RAG系统优化完整路径:从30%到90%准确率的工程实践
服务器·数据库·windows