如何使用 Powershell 创建适当的 do-while 循环

How can I create a proper do-while loop using Powershell

我希望脚本生成一个随机的最后一组 (Key0) 并尝试在每次迭代中使用连接的字符串 (Key) 解锁驱动器,但无法正常工作。 我执行脚本,它只是尝试了一次。好像while不工作了。

Do {      
  $Hash0 = 0..5 | % {Get-Random -Minimum 0 -Maximum 9 }
  $Key0 = $Hash0 -join ""
  $Key  = "175615-666567-468105-046717-174922-139634-579799-"+$Key0
  manage-bde.exe -unlock H: -recoverypassword $Key >$null
  $Status = Get-BitlockerVolume -MountPoint "H:" 
} while($Status.CapacityGB -ne "0")

我不是 Powershell 专家。

使用 Do-While 循环,脚本块至少执行一次。

While 条件在脚本块具有 运行 之后计算。只要 While 语句中的条件为真,脚本块就会重复。

你的 While 语句是

while($Status.CapacityGB -ne "0")

您希望在 CapacityGB 不等于 0 时执行 do 循环

如果循环停止,则表明您的 while 语句评估为 false,这表明 CapacityGB 为零。我会检查你在 $status 变量

中得到了什么