我尝试创建一个脚本来删除%temp%
中的所有文件。它工作,但现在我需要摆脱错误。以下是我的内容,但我仍然遇到错误。有什么想法吗?
try
{
Get-Childitem $Env:temp | Remove-Item -Recurse -Force
}
Catch
{
}
答案 0 :(得分:1)
临时文件中的大量文件可能正在使用或以其他方式无法访问,因为这是流程留出数据的临时空间。
最常见的cmdlet支持-ErrorAction
,因此您无需更改默认值,并且可能会错过重要错误。在您的情况下,您可以使用...
Get-Childitem $Env:temp | Remove-Item -Recurse -Force -ErrorAction SilentlyContinue
由于您没有生成Try
所针对的终止错误,因此您可以完全删除该块。
FWIW如果你确实需要try / catch,请确保使用终止错误
try{
Get-ChildItem $Env:temp | Remove-Item -Recurse -Force -ErrorAction Stop
} Catch{
# Handle Stuff
Write-Host "Removal not 100% successful"
}