Closed1
FleetManagerを使ってWindows Server2022のEC2接続時にPowershellで文字入力ができない際の対応
発生した問題:
Fleet ManagerでWindows Server 2022接続後、PowerShellコンソールで以下の入力障害が発生します。
- キーボードからの直接文字入力不可
- エンターキーのみ入力可能
- 外部からのコピー&ペーストは可能
この状態では、実行したいコマンドをテキストエディタなどであらかじめ作成し、コピー&ペーストしなければならず作業効率が大幅に低下します。
この原因と対処方法について説明します。
今回使用したAMI:
Windows_Server-2022-English-Full-Base-2025.02.13
原因:
デフォルトでインストールされている PSReadline 2.0.0
が原因です。
参考:PSReadline 2.1.0 doesn't work in the windows virtual desktop web interface #2725
確認方法:
以下のコマンドをコピー&ペーストしてPSReadlineのバージョンを確認します。
Get-Module
以下のようにバージョンが確認できます。
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Script 2.0.0 PSReadline {Get-PSReadLineKeyHandler, Get-PSReadLineOption, Remove-PSReadLineKeyHandler, Set-PSReadLineKeyH...
対処方法:
本手順を実施すると、2025/02/19時点で最新バージョンがインストールされます。
- スタートメニューからWindows PowerShellを起動します。
- 文字入力ができないことを確認します。
- (文字入力ができない場合)問題が修正されているPSReadLineのバージョン2.2.2以上をインストールします。以下のコマンドをコピー&ペーストして実行します。
Install-Module -Name PSReadLine -Repository PSGallery -MinimumVersion 2.2.2 -Force
- 開いているPowerShellコンソールを閉じて、新しく開きなおします。
- 以下のコマンドで新バージョンを確認します。バージョンが2.0.0から2.3.6になっていればバージョンアップが完了しています。
Get-Module
ModuleType Version Name ExportedCommands ---------- ------- ---- ---------------- Script 2.3.6 PSReadline {Get-PSReadLineKeyHandler, Get-PSReadLineOption, Remove-PS...
- 最後に、文字入力ができることを確認します。
このスクラップは2025/02/27にクローズされました