次の方法で共有


Start-Sleep

指定された期間、スクリプトまたはセッションでアクティビティを中断します。

構文

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

説明

Start-Sleep コマンドレットは、指定した期間、スクリプトまたはセッションのアクティビティを中断します。 操作が完了するのを待つ間、操作を繰り返す前の一時停止中など多くのタスクに使用できます。

例 1: 実行を 1.5 秒間一時停止する

この例では、コマンドの実行が 1 秒半一時停止します。

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 は、スリープ タイマーの有効期限が切れるまで、2 番目の Get-Date コマンドを実行できません。

例 3: **TimeSpan** を使用するスリープ コマンド

この例では、セッション内のすべてのコマンドを 30 秒間スリープ状態にします。

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

パラメーター

-Duration

TimeSpan オブジェクトを使用して、リソースのスリープ時間をミリ秒単位で指定します。 値は負の TimeSpan にすることはできません。また、 [int]::MaxValue ミリ秒を超えてはなりません。

このパラメーターは PowerShell 7.3 で追加されました。

型:TimeSpan
Aliases:ts
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Milliseconds

リソースをスリープ状態にする時間をミリ秒単位で指定します。 このパラメーターは、 m と省略できます。

型:Int32
Aliases:ms
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-Seconds

リソースをスリープ状態にする時間を秒単位で指定します。 パラメーター名は省略することも、 として省略することもできます。 PowerShell 6.2.0 以降では、このパラメーターは小数部の値を受け入れるようになりました。

型:Double
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

入力

Int32

このコマンドレットには、秒数をパイプ処理できます。

出力

None

このコマンドレットは、出力を返しません。

メモ

PowerShell には、 Start-Sleepの次のエイリアスが含まれています。

  • Windows:

    • sleep
  • Ctrl+CStart-Sleepから抜け出します。

  • Ctrl+C[Threading.Thread]::Sleepから抜け出しません。 詳細については、「 Thread.Sleep メソッドを参照してください。