如何在PowerShell中静静地删除一个包含内容的目录

使用PowerShell,是否可以删除一些包含没有提示的文件的目录?

Remove-Item .\foldertodelete -Force -Recurse 

从PowerShell中删除强制回答 :help Remove-Item说:

此cmdlet中的Recurse参数无法正常工作

解决的命令是

 Get-ChildItem -Path $Destination -Recurse | Remove-Item -force -recurse 

然后删除文件夹本身

 Remove-Item $Destination -Force 

这对我工作:

 Remove-Item $folderPath -Force -Recurse -ErrorAction SilentlyContinue 

因此,该文件夹被删除与所有文件在那里,它不会产生错误,如果文件夹path不存在。

要删除没有文件夹的内容,可以使用以下命令:

 Remove-Item "foldertodelete\*" -Force -Recurse 

rm -Force -Recurse -Confirm:$false $directory2Delete在PowerShell ISE中不起作用,但是它通过常规的PowerShell CLI工作。

我希望这有帮助。 这是开车bannanas。

以下是Michael Freidgeim的答案的复制粘贴实现

 function Delete-FolderAndContents { # http://stackoverflow.com/a/9012108 param( [Parameter(Mandatory=$true, Position=1)] [string] $folder_path ) process { $child_items = ([array] (Get-ChildItem -Path $folder_path -Recurse -Force)) if ($child_items) { $null = $child_items | Remove-Item -Force -Recurse } $null = Remove-Item $folder_path -Force } } 

$LogPath = "E:\" # Your local of directories $Folders = Get-Childitem $LogPath -dir -r | Where-Object {$_.name -like " grav "} # Your keyword name directories

foreach($文件夹中的$文件夹){$ Item = $ Folder.FullName写输出$项目删除项目$项目强制-Recurse -ErrorAction SilentlyContinue}

 $LogPath = "E:\" # Your local of directories $Folders = Get-Childitem $LogPath -dir -r | Where-Object {$_.name -like "*temp*"} foreach ($Folder in $Folders) { $Item = $Folder.FullName Write-Output $Item Remove-Item $Item -Force -Recurse }