powershell可通过任务计划程序实现周期性磁盘清理:①用clear-recyclebin定时清空回收站;②用脚本批量删除临时文件;③配合cleanmgr预设配置执行深度清理,全程无需第三方工具。
powershell 本身不直接执行磁盘清理,但它能精准调用系统能力(比如清回收站、删临时目录),再配合任务计划程序,就能实现真正可靠的周期性磁盘清理。关键不是写多复杂的脚本,而是把系统自带的清理动作“包装”成定时任务,并确保它有足够权限、在正确时机安静运行。
用 PowerShell 命令定时清空回收站(最常用、最安全)
回收站长期不处理,几GB就没了。PowerShell 的 Clear-RecycleBin 命令能跨驱动器统一操作,比手动点更彻底。
- 打开任务计划程序(
taskschd.msc) - 点“创建基本任务”,起名如“每日清空回收站”
- 触发器设为每天固定时间(推荐凌晨2:00,避开使用高峰)
- 操作选“启动程序”,填:
- 程序:
PowerShell.exe - 参数:
-NoProfile -Command "Clear-RecycleBin -Force -ErrorAction SilentlyContinue"
- 程序:
- 进入任务属性 → “常规”选项卡 → 勾选:
- ✅ 不管用户是否登录都要运行
- ✅ 运行时需使用最高权限
- 若只清C盘,参数末尾加
-DriveLetter C
用 PowerShell 脚本批量清理多处临时文件(更深入)
比单纯清回收站覆盖更广,可扫 %TEMP%、C:\Windows\Temp、SoftwareDistribution\Download 等路径。
- 新建一个
.ps1文件(如Clean-TempFiles.ps1),内容示例:# 清用户临时目录(自动获取当前用户) Remove-Item "$env:TEMP\*" -Recurse -Force -ErrorAction SilentlyContinue
清系统临时目录(需管理员权限)
Remove-Item "C:\Windows\Temp*" -Recurse -Force -ErrorAction SilentlyContinue
在 Windows 上执行终端命令,或对比 Windows 与 Linux 的 Shell 语法时使用。建议先检测当前 Shell 是 PowerShell 还是 cmd.exe,再给出相应命令……
清Windows更新缓存(谨慎,建议确认系统稳定后再启用)
Remove-Item "C:\Windows\SoftwareDistribution\Download*" -Recurse -Force -ErrorAction SilentlyContinue
输出清理完成提示(可选)
Write-Host "临时文件清理已完成"
- 在任务计划程序中新建任务,操作类型选“启动程序”,填: - 程序:`PowerShell.exe` - 参数:`-NoProfile -ExecutionPolicy Bypass -File "D:\Scripts\Clean-TempFiles.ps1"`(路径替换成你保存的实际位置) - 同样必须勾选“不管用户是否登录都要运行”和“使用最高权限” **配合 cleanmgr 实现深度系统级清理(覆盖 Windows 更新残留等)** PowerShell 不直接调用 `cleanmgr` 的高级选项,但可通过命令预设 + 计划任务间接实现: - 先以管理员身份运行一次:`cleanmgr /sageset:100`,勾选“Windows更新清理”“系统错误内存转储”等,保存为配置100 - 再测试:`cleanmgr /sagerun:100`,确认能自动开始 - 创建计划任务,操作填: - 程序:`cleanmgr.exe` - 参数:`/sagerun:100` - 属性中仍要勾选“使用最高权限”和“不管用户是否登录都要运行” 所有任务都建议设在低峰时段,首次配置后右键选择“运行”测试一遍,看是否真能静默执行、无报错、空间确实释放。不需要第三方工具,也不需要改注册表或组策略,系统原生组合就够稳。










