Powershell执行while循环脚本输出意外

时间:2018-04-26 03:51:38

标签: powershell powershell-v3.0 powershell-v4.0 powershell-remoting

每隔5秒钟尝试获取PowerShell(示例)的活动进程。运行以下脚本。我杀死了2个powershell会话,每5秒运行一次的脚本不会将活动会话更新为3,而是显示为5个会话。请帮助我出错的地方

$process = Get-Process powershell* 
$count = $process.count 
Do {
    $count
    sleep -Seconds 5 
} until ($count -eq 1)

输出:

enter image description here

1 个答案:

答案 0 :(得分:1)

您只需将前两个语句放在do块中。

do 
{
    $process = Get-Process powershell*
    $count = $process.count
    $count
    sleep -Seconds 5
} until ($count -eq 1)

每次循环时重新计算$count的方式,否则值不会像您观察到的那样发生变化。