我正在尝试删除 D:\MyTemp 文件夹中的所有文件(但不删除目录),我尝试过:
Remove-Item "D:\MyTemp"
Remove-Item "D:\MyTemp\*"
但是,当我检查时,所有文件都还在。
我遗漏了什么?
答案1
尝试这个:
Get-ChildItem *.* -recurse | Where { ! $_.PSIsContainer }
在这里找到: https://superuser.com/questions/150748/have-powershell-get-childitem-return-files-only
仅删除指定目录中的所有文件(忽略子目录):
Remove-Item "D:\MyTemp\*.*" | Where { ! $_.PSIsContainer }
答案2
接受的答案对我来说不起作用,相反我需要:
Get-Childitem -File | Foreach-Object {Remove-Item $_.FullName}
要包含文件夹和文件,请添加-Recurse
:
Get-Childitem -File -Recurse | Foreach-Object {Remove-Item $_.FullName}
答案3
您几乎已经完成了,您只需要:
Remove-Item "D:\MyTemp\*.*"
答案4
我知道的最简单的方法如下(显然导航到您想要清空文件的目录):
Get-ChildItem -File -Recurse | Remove-Item
我不确定这是否需要最低版本,但我很确定这已经工作了很长时间。