如何使用清除内容清空目录

时间:2019-02-14 10:53:47

标签: powershell

我有以下脚本:

New-Item -ItemType Directory -Force -Path .\bin\Release\SurvivalKit | Out-Null
#Clear-Content -Path .\bin\Release\SurvivalKit
Remove-item .\bin\Release\SurvivalKit\* -Recurse -Force

Remove-Item正常工作,但是Clear-Content导致拒绝访问错误

  

PermissionDenied:(D:\ dev \ fromSVN ... SurvivalKit:String)[清除内容],UnauthorizedAccessException

我的外壳是管理外壳。

是否可以使用Clear-Content清空目录?

1 个答案:

答案 0 :(得分:1)

我尝试使用Clear-Content,将其指向目录C:\folder总是以PermissionDenied错误结尾,即使权限正确也是如此-如果文件夹中包含文件,即使文件夹包含文件,也是如此空的。

如果将其指向文件夹内容C:\folder\*,它将按预期工作并清除目录中文件的内容。

您似乎正在尝试将其用于无法执行的操作,documentation for Clear-Content并未声明会删除项目(文件)的任何地方,只会删除项目内容:

  

Clear-Content cmdlet删除项目的内容,例如从文件中删除文本,但不会删除该项目。结果,该项目存在,但为空。


因此Clear-Content将删除文件的内容,但不会删除文件本身。

如果确实将其指向文件夹:

Clear-Content -Path C:\folder\*

其中的文件将保留,但是将清除所有内容并成为空的“ 0KB”文件:

要删除文件Remove-Item是正确的命令:

Remove-Item -Path C:\folder\*