我不确定是否有更有效的方法可以做到这一点,或者结合 while 和 for 循环是否有效,但是我如何解决这个问题以仅在 for 循环中的每个项目都返回 true 时才运行该函数?
$In = @()
While ($In[-1] -ne 'done') {$In += @(Read-Host 'Prompt')}
do {
for($i=0;$i-le $In.length-2;$i++) {function($In[$i])}
}
while (for($j=0;$j-le $In.length-2;$j++)
{Get-Service ($In[$j]) | $_.status} -eq "Running")
对于各种服务名称的 $In 数组,do -while 应该在任何一个服务返回状态“已停止”时重新启动数组中的每个服务。