如果有这段代码
if(Test-Path -Path $OUT)
{
Remove-Item $OUT -Recurse
}
New-Item -ItemType directory -Path $OUT
Run Code Online (Sandbox Code Playgroud)
有时它可以工作,但有时New-Item行会产生PermissionDenied ItemExistsUnauthorizedAccessError错误。我认为这意味着以前的Remove-Item尚未完全执行,并且无法创建文件夹,因为该文件夹仍然存在。
如果我在那里睡觉
if(Test-Path -Path $OUT)
{
Remove-Item $OUT -Recurse
Start-Sleep -s 1
}
New-Item -ItemType directory -Path $OUT
Run Code Online (Sandbox Code Playgroud)
然后它总是可以工作。如何强制Remove-Item以确保文件夹已真正删除?还是我想念其他东西?