Powershell,删除具有相同名称的文件夹,如 .zip

Powershell , remove folder with the same name like .zip

我必须将从 zip 文件中提取的文件删除到以 zip 文件命名的文件夹中,即:

\test1.zip -> \test1

我的脚本必须找到与 zip 文件同名的文件夹并删除该文件夹。

获取目录中所有 Zip 文件的列表,然后遍历结果并删除任何具有相同名称但不带扩展名的文件夹,也称为 BaseName

Get-ChildItem -Filter *.zip | `
  ForEach-Object { if (Test-Path $_.BaseName) {
    Remove-Item -Recurse -Force $_.BaseName }
  }

您可以在一行中输入整个命令,我将其分开以便于阅读。我在这个例子中使用了以下命令:

  • Get-ChildItem - 在管道中为每个扩展名为 .zip 的文件创建一个对象
  • ForEach-Object - 仅允许您对管道中的每个对象执行一个操作。
  • Remove-Item - 注意使用 -Recurse-Force 确保文件夹被删除,即使它包含文件,你 不会 被要求确认。