Потребность добавить команду “Wait” к сценарию Powershell

Я предполагаю, так как устройство, которое Вы хотите использовать в своем VM, действительно имеет файловую систему, что я сделал бы, у меня был бы хост, монтируют эту файловую систему и затем экспортируют его с помощью NFS. Затем я использовал бы клиент NFS в VM для соединения с той файловой системой.

39
задан 17 May 2011 в 17:42
5 ответов

Используйте Start-Sleep команда:

Start-Sleep -s 10

приостановит сценарий в течение 10 секунд.

91
ответ дан 28 November 2019 в 19:45

Вы могли выполнить его как фоновое задание и затем ожидать того задания для окончания. Как это:

$enablemb = начинать-задание {разрешать-почтовый-ящик - идентификационные данные "$DName" - база данных "$RData"}
$enablemb ожидать-задания
$enablemb получать-задания

3
ответ дан 28 November 2019 в 19:45

Я должен был иметь дело с некоторой синхронизацией в сценарии Exchange, который я записал только что. А именно, я должен был изменить полномочия на недавно созданной группе распределения, но должен был ожидать, пока группа распределения не была на самом деле создана прежде, чем попытаться изменить ее.

do {
    sleep -seconds 1
    $mailboxExists = get-mailboxpermission -Identity "CN=$displayName,$DN" -User "NT AUTHORITY\SELF" -ErrorAction SilentlyContinue |fw IsValid
    write-host "." -nonewline
} while (!$mailboxExists)

Это просто пытается получить атрибут "IsValid" от почтового ящика (в этом примере), поскольку прокси для "почтового ящика существует". Однажды get-mailboxpermission возвращает true, следующий шаг, устанавливая разрешение будет на самом деле функционировать. write-host должен только обеспечить индикатор выполнения.

8
ответ дан 28 November 2019 в 19:45

Начинать-сон = ожидает x секунды

http://technet.microsoft.com/en-us/library/ee177002.aspx

1
ответ дан 28 November 2019 в 19:45

Почему бы не что-то вроде:

do {
$testpath = Test-Path -path \\dns2\d$\test
}
until ($testpath -eq $true)

Я использую этот тип команды с дополнительным start-sleep после начального теста, потому что do пока не потребляет много циклов процессора без Это. Итак, мой выглядит примерно так:

do {
$testpath = Test-Path -path \\dns2\d$\test
start-sleep -s 10}
until ($testpath -eq $true)

Если тест будет быстро менять состояние, когда не беспокойтесь о start-sleep .

1
ответ дан 28 November 2019 в 19:45

Теги

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