Start-Sleep

在指定时间段内暂停脚本或会话中的活动。

语法

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

说明

Start-Sleep cmdlet 会在指定时间段内挂起脚本或会话中的活动。 可以将其用于许多任务,例如,在重复作之前等待作完成或暂停。

示例

示例 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
别名:ts
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Milliseconds

指定资源睡眠时间(以毫秒为单位)。 参数可以缩写为 m

类型:Int32
别名:ms
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Seconds

指定资源睡眠时间(以秒为单位)。 可以省略参数名称,也可以将其缩写为 s。 从 PowerShell 6.2.0 开始,此参数现在接受小数部分值。

类型:Double
Position:0
默认值:None
必需:True
接受管道输入:True
接受通配符:False

输入

Int32

可以通过管道将秒数传递给此 cmdlet。

输出

None

此 cmdlet 不返回任何输出。

备注

PowerShell 包含以下 Start-Sleep别名:

  • 窗户:

    • sleep
  • Ctrl+C Start-Sleep爆发。

  • Ctrl+C 不会爆发 [Threading.Thread]::Sleep。 有关详细信息,请参阅 Thread.Sleep 方法