Почему простейший скрипт не всегда видет сервис и требует перезапук?

Вот простая задача. Но порой она не видет pid и просто пропускает поцес в результате приходится останавливать скрипт и запускать его заново.
Что может быть не так?

?
$interval = 2 # Интервал в секундах

while ($true) {
    $processes = Get-Process -Name "WmiPrvSE" -ErrorAction SilentlyContinue
    foreach ($process in $processes) {
        try {
            $process.Kill()
	     echo $processes
            Write-Host "stoped WmiPrvSE.exe OK."
        } catch {
            Write-Host " Error don't stop  WmiPrvSE.exe: $($_.Exception.Message)"
        }
    }
    Start-Sleep -Seconds $interval
}
  • Вопрос задан
  • 108 просмотров
Пригласить эксперта
Ответы на вопрос 1
@NortheR73
системный инженер
она не видет pid и просто пропускает поцес
потому что вы после завершения каждого процесса WmiPrvSE повторно показываете исходный список процессов (echo $processes).
P.S. раз уж у вас PowerShell, то Stop-Process $process -Force...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы