Я пишу сценарий, который будет ждать завершения задачи, которая произойдет после нескольких перезагрузок Windows Server. Существует команда PowerShell для проверки состояния операции с помощью поля "Состояние". По завершении значение статуса "Завершено". Почему этот фрагмент не работает, вместо того, чтобы не выполнять цикл while, он выполняет код:

while ( (Get-WssConfigurationStatus | select Status) -ne "Finished" ) {
  Write-Host "Waiting for WSS Configuration to complete"
  sleep -seconds 60
}

Если вам интересно, это часть более широкого сценария Packer для установки роли Windows Server Essentials на 2012R2.

Заранее спасибо, Ал

1 ответ1

1

Этот тестовый скрипт работает здесь:

while ( (Get-Service audiosrv).Status -ne "Finished" ) {
  Write-Host (get-date) "Waiting for WSS Configuration to complete"
  sleep -seconds 60
}

Поэтому измените свою первую строку на:

while ( (Get-WssConfigurationStatus).Status -ne "Finished" ) {

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .