当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何在 PowerShell 中删除所有空文件夹(附示例)

作者:精品下载站 日期:2024-12-14 04:38:55 浏览:12 分类:玩电脑

如何在 PowerShell 中删除所有空文件夹(附示例)


您可以在 PowerShell 中使用以下语法来列出当前目录中的所有空文件夹

Dir -Directory -Recurse | Where-Object {$_.GetFileSystemInfos().Count -eq 0 }

然后,您可以使用以下语法递归地删除当前目录中的所有空文件夹

Get-ChildItem -Recurse -Force -Directory | 
  Sort-Object -Property FullName -Descending |
  Where-Object { $($_ | Get-ChildItem -Force | Select-Object -First 1).Count -eq 0 } |
  Remove-Item -Verbose

请注意,我们在最后一行使用 Remove-Item cmdlet 来删除空文件夹,并指定 -Verbose 以便 PowerShell 输出它删除的文件夹的名称。

以下示例展示了如何在实践中使用此语法。

示例:如何在 PowerShell 中删除所有空文件夹

假设我们要删除当前目录中的所有空文件夹。

我们可以先使用 Dir 语句来查看当前目录下的所有文件夹:

Dir -Directory -Recurse

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] 如何在 PowerShell 中删除所有空文件夹(附示例)

我们可以看到当前目录包含五个文件夹,并且没有一个文件夹有子文件夹。

我们可以使用以下语法首先检查这些文件夹是否为空:

Dir -Directory -Recurse | Where-Object {$_.GetFileSystemInfos().Count -eq 0 }

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] 如何在 PowerShell 中删除所有空文件夹(附示例)

这将返回两个空文件夹的名称:

  • 地点
  • 地区

我们可以使用以下语法从目录中删除这些文件夹:

Get-ChildItem -Recurse -Force -Directory | 
  Sort-Object -Property FullName -Descending |
  Where-Object { $($_ | Get-ChildItem -Force | Select-Object -First 1).Count -eq 0 } |
  Remove-Item -Verbose

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] 如何在 PowerShell 中删除所有空文件夹(附示例)

输出中的 VERBOSE 语句告诉我们,regionslocations 文件夹已被删除。

我们可以再次使用 Dir 语句来查看当前目录中的所有文件夹:

[玩转系统] 如何在 PowerShell 中删除所有空文件夹(附示例)

我们可以看到 regionslocations 文件夹都已从当前目录中删除。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯