Поделиться через


Start-Sleep

Приостанавливает действие в скрипте или сеансе на указанное время.

Синтаксис

Start-Sleep
     [-Seconds] <Double>
     [<CommonParameters>]
Start-Sleep
     -Milliseconds <Int32>
     [<CommonParameters>]
Start-Sleep
     -Duration <TimeSpan>
     [<CommonParameters>]

Описание

Командлет Start-Sleep приостанавливает действие в скрипте или сеансе в течение указанного периода времени. Его можно использовать для выполнения многих задач, например ожидания завершения операции или приостановки перед повторением операции.

Примеры

Пример 1. Приостановка выполнения в течение 1,5 секунд

В этом примере выполнение команд приостанавливается в течение одного с половиной секунд.

Start-Sleep -Seconds 1.5

Пример 2. Приостановка выполнения в командной строке

В этом примере показано, что выполнение приостановлено в течение 5 секунд при выполнении из командной строки.

PS> Get-Date; Start-Sleep -Seconds 5; Get-Date

Friday, May 13, 2022 9:38:15 AM
Friday, May 13, 2022 9:38:20 AM

PowerShell не может выполнить вторую Get-Date команду до истечения срока действия таймера сна.

Пример 3. Команды спящего режима с помощью **TimeSpan**

В этом примере все команды в спящий режим сеанса делаются в течение 30 секунд.

Start-Sleep -Duration (New-TimeSpan -Seconds 30)

Параметры

-Duration

Использует объект TimeSpan, чтобы указать, сколько времени ресурс спящий в миллисекундах. Значение не должно быть отрицательным интервалом TimeSpan и не должно превышать [int]::MaxValue миллисекунд.

Этот параметр был добавлен в PowerShell 7.3.

Тип:TimeSpan
Aliases:ts
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Milliseconds

Указывает, на какое время ресурс приостанавливается, в миллисекундах. Параметр может быть сокращен как m.

Тип:Int32
Aliases:ms
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Seconds

Указывает, на какое время ресурс приостанавливается, в секундах. Вы можете опустить имя параметра или сократить его как s. Начиная с PowerShell 6.2.0, этот параметр теперь принимает дробные значения.

Тип:Double
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

Входные данные

Int32

Вы можете передать количество секунд в этот командлет.

Выходные данные

None

Этот командлет не возвращает выходные данные.

Примечания

PowerShell включает следующие псевдонимы для Start-Sleep:

  • Windows:

    • sleep
  • Ctrl+C вырывается из Start-Sleep.

  • Ctrl+C не выходит из [Threading.Thread]::Sleep. Дополнительные сведения см. в разделе Thread.Sleep Method.