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
相关推荐
牢姐与蒯2 小时前
安全模式下删除流氓文件
windows
qq762118223 小时前
windows Qt mingw 编译libzip
开发语言·windows·qt
曹牧3 小时前
Java:Java 数组转 List
java·开发语言·windows
Ai老司机3 小时前
Windows 本地文件搜索为什么快?本地索引加速定位的原理
windows
小江的记录本3 小时前
【ORM 框架】MyBatis-Plus 核心特性、条件构造器、分页插件、乐观锁插件(附《思维导图》、《问题排查与实践清单》和《面试高频考点汇总》)
java·windows·spring boot·python·spring·面试·mybatis
水饺编程4 小时前
第5章,[Win32 章节] :绘制填充区域
c语言·c++·windows·visual studio
雾沉川21 小时前
WinRAR 压缩解压软件 功能介绍、硬件适配、横向对比及安装使用教程
windows·winrar·压缩软件
sukalot1 天前
windows 驱动实例分析系列: wireguard-nt驱动分析-driver篇(一)
windows·驱动开发
百事牛科技1 天前
Excel部分单元格禁止修改:锁住该锁的,放开该放的
windows·excel
水饺编程1 天前
第5章,[Win32 章节] :创建、选择和删除画笔
c语言·c++·windows·visual studio