PowerShell是Windows清理临时目录最灵活可控的方式,支持用户级%TEMP%和系统级C:\Windows\Temp路径,可手动执行、封装脚本、定时自动清理,并能扩展清理Prefetch等高频临时区。
powershell 是 windows 系统运维中清理临时目录最灵活、最可控的方式。它能同时覆盖用户级(%temp%)和系统级(c:\windows\temp)路径,支持错误跳过、静默执行、定时集成,且无需第三方工具。
一、直接运行命令快速清理
适合手动触发或临时释放空间,需以管理员身份运行 PowerShell:清理当前用户临时文件:
Get-ChildItem $env:TEMP -Recurse -Force -ErrorAction SilentlyContinue | Where-Object {!$_.PSIsContainer} | Remove-Item -Force -ErrorAction SilentlyContinue清理系统级临时目录:
Get-ChildItem "$env:windir\Temp" -Recurse -Force -ErrorAction SilentlyContinue | Where-Object {!$_.PSIsContainer} | Remove-Item -Force -ErrorAction SilentlyContinue说明:这两条命令会递归扫描、跳过正在被占用的文件,只删除普通文件(不删空文件夹),安全系数高。
二、封装为可复用脚本
把清理逻辑保存为 `.ps1` 文件,便于后续调用或加入计划任务:- 新建文本文件,命名为 CleanTemp.ps1,内容如下:
$UserTemp = $env:TEMP
$SystemTemp = "$env:windir\Temp"
Write-Host "正在清理用户临时文件..." -ForegroundColor Green
Remove-Item "$UserTemp\*" -Recurse -Force -ErrorAction SilentlyContinue
Write-Host "正在清理系统临时文件..." -ForegroundColor Green
Remove-Item "$SystemTemp\*" -Recurse -Force -ErrorAction SilentlyContinue
Write-Host "清理完成。" -ForegroundColor Cyan
- 保存路径建议为固定位置,如 C:\Scripts\CleanTemp.ps1
- 首次运行前,在管理员 PowerShell 中执行:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force - 之后双击或右键“使用 PowerShell 运行”即可一键清理
三、接入任务计划程序实现每日自动清理
让脚本在无人值守时安静运行,关键是权限与触发配置:- 打开任务计划程序(taskschd.msc)
- 创建基本任务,名称如“每日清空Temp”,触发器设为每天凌晨2:00
- 操作类型选“启动程序”,填写:
程序:powershell.exe
参数:-ExecutionPolicy Bypass -File "C:\Scripts\CleanTemp.ps1" - 在【常规】选项卡中必须勾选:
✔ 使用最高权限运行
✔ 不管用户是否登录都要运行
这样配置后,系统会在每天指定时间自动执行,不弹窗、不依赖登录状态,真正实现运维自动化。
四、进阶:扩展清理其他高频临时区
若需更彻底,可在脚本中追加以下常用路径清理(同样加 -ErrorAction SilentlyContinue 防中断):- %SystemRoot%\Prefetch:预读缓存,常驻无用文件
- %SystemRoot%\SoftwareDistribution\Download:Windows 更新下载缓存
- $env:LOCALAPPDATA\Microsoft\Windows\INetCache:IE/Edge 浏览器缓存
- $env:LOCALAPPDATA\Temp:UWP 应用临时目录
每项都用 Remove-Item -Path "路径" -Recurse -Force -ErrorAction SilentlyContinue 即可。

















