Powershell 可查找不受密码保护的 ZIP 文件夹中的所有文件并删除它们

问题描述 投票:0回答:1

我找到了这个 - > https://superuser.com/questions/1150631/powershell-script-to-test-zip-passwords-from-file - >但看起来我需要的有点不同。

是否可以找到文件夹中不受密码保护的所有文件并将其删除?

试图解决人们将各种敏感文件放在不该放的地方的问题。

powershell security
1个回答
1
投票

您可以尝试以下方法:

Get-ChildItem -Filter *.zip |
  Where-Object { '' | 7z t $_.FullName *>$null; $LASTEXITCODE -eq 0 } |
  Remove-Item -WhatIf

注意:上面命令中的

-WhatIf
常用参数预览操作。一旦您确定该操作将执行您想要的操作,请删除
-WhatIf

  • 上面使用

    7z
    t
    命令来验证存档完整性。

  • 受密码保护的存档会触发密码提示,管道输入 - 空字符串 (

    '' | ...
    ) - 会提供响应,导致完整性验证因密码无效而失败
    7z
    通过以下方式报告非零退出代码,反映在 PowerShell 的 自动
    $LASTEXITCODE
    变量

  • 因此,
  • $LASTEXITCODE -eq 0
    仅对通过完整性测试的档案返回
    $true
    ,这些档案是没有密码保护的档案(
    7z
    然后忽略不需要的管道输入)。

© www.soinside.com 2019 - 2024. All rights reserved.