PowerShell で任意のキーを押して続行する

Rohan Timalsina 2023年1月30日
  1. PowerShell で ReadKey (System.Console) を使用して任意のキーを押して続行を有効にする
  2. PowerShell で ReadKey(コンソール) を使用して任意のキーを押して続行を有効にする
  3. PowerShell で ReadKey (RawUI) を使用して任意のキーを押して続行を有効にする
  4. PowerShell で Read-Host を使用して任意のキーを押して続行を有効にする
  5. PowerShell で cmd /c 'pause'コマンドを使用して任意のキーを押して続行を有効にする
  6. PowerShell で timeout を使用して任意のキーを押して続行を有効にする
PowerShell で任意のキーを押して続行する

このチュートリアルでは、PowerShell での実行を一時停止する方法を説明します。

PowerShell で続行するには任意のキーを押すダイアログを有効にすることができます。通常、ユーザー入力または別のプロセスを待機するために使用されます。

また、PowerShell での実行を遅くしたり一時停止したりするのにも役立ちます。ほとんどの場合、CtrlShiftWindowsAltなどのキーでは機能しません。

PowerShell で ReadKey (System.Console) を使用して任意のキーを押して続行を有効にする

System.Console ReadKey は以下のように実行できます。ShiftAltCtrl、およびその他の修飾キーを除くすべてのキーを受け入れます。

[void][System.Console]::ReadKey($true)

PowerShell で ReadKey(コンソール) を使用して任意のキーを押して続行を有効にする

[Console]::ReadKey() を使用して、PowerShell で任意のキーを押して続行を有効にすることができます。実行を一時停止しながら、キーと修飾子を読み取ることができます。ShiftAltCtrl、およびその他の修飾キーは除外されます。

[Console]::ReadKey()

キーを押すと、KeyCharKey、および Modifiers の値が表示されます。このデータは、System.ConsoleKeyInfo オブジェクトとして保存されます。

出力:

KeyChar Key Modifiers
------- --- ---------
      a   A         0

PowerShell で ReadKey (RawUI) を使用して任意のキーを押して続行を有効にする

このメソッドは、[Console]::ReadKey() に似ています。CtrlShift⊞ WinAlt、およびその他の修飾キーを含むすべてのキーを受け入れます。

IncludeKeyDownIncludeKeyUpNoEchoAllowCtrlC など、RawUI ReadKey メソッドで渡すことができるさまざまな ReadKeyOptions があります。

$host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")

q を押すと、次の結果が表示されます。

出力:

VirtualKeyCode Character ControlKeyState KeyDown
-------------- --------- --------------- -------
            81         q       NumLockOn    True

PowerShell で Read-Host を使用して任意のキーを押して続行を有効にする

Read-Host は、ユーザー入力を促す最も一般的な方法です。このメソッドを使用して、PowerShell でユーザー入力を求めるときに実行を一時停止できます。

Read-Host -Prompt "Press any key to continue"

キーを押した後、Enterを押して一時停止モードを終了する必要があります。入力したテキストを出力に表示します。

出力:

Press any key to continue: Hello
Hello

PowerShell で cmd /c 'pause'コマンドを使用して任意のキーを押して続行を有効にする

cmd /c pause コマンドは Press any key to continue . . . を表示し、キーが押されるまで実行を一時停止します。

cmd /c pause

出力:

Press any key to continue . . .

PowerShell で timeout を使用して任意のキーを押して続行を有効にする

timeout コマンドは、特定の期間または無限の時間実行を一時停止できます。/t オプションを使用して、時間を秒単位で指定できます。指定されたタイムアウトの有効な値の範囲は、-1 から 99999 です。

以下のコマンドは、キーが押されていない場合、5 秒待機します。

timeout /t 5

出力:

Waiting for 5 seconds, press a key to continue ...

-1 値は、キーが押されていない場合に実行を無限に一時停止するために使用されます。

timeout /t -1

出力:

Press any key to continue ...
著者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website