PowerShellで垂直スクロールができない?スクロールバックを修正する

PowerShell で垂直スクロールができない場合は、シェルをホストしているアプリケーションのスクロールバック設定を変更してください。従来の Windows PowerShell コンソールでは、画面バッファの高さを増やしてください。Windows Terminal では、プロファイルの履歴サイズを増やしてください。これらの設定では出力行が保持されますが、PowerShell のコマンド履歴では保持されません。古い行が既に破棄されている場合は、コマンドを再実行するか、再度実行する前にトランスクリプトをキャプチャしてください。

まず、スクロールされていない部分を特定します。

PowerShell は、従来のコンソール ホスト、Windows ターミナル、Visual Studio Code の統合ターミナル、PowerShell ISE などのホストに出力を送信します。ホストは、画面上に表示できる出力行数を制御します。コマンドの出力行数がウィンドウに収まらない場合、スクロールする行はありません。

100行を出力する無害なコマンドでテストしてみましょう。

1..100 | ForEach-Object { "Line $_" }

処理が完了したら、コンソールをクリックし、Escキーを押してテキストの選択を解除してから、マウスホイールまたはスクロールバーを操作してみてください。テスト出力をスクロールできるものの、古い行がすぐに消えてしまう場合は、下のスクロールバック設定を拡大してください。ホイールが何も反応しない場合は、正しいターミナルペインにフォーカスが当たっていることを確認し、使用しているアプリケーションの手順に従ってください。

従来のWindows PowerShellコンソールを修正する

Windows Terminal 内の PowerShell タブではなく、独立した Windows PowerShell ウィンドウを開くには、以下の手順に従ってください。

  1. Windows PowerShellを開き、上記のテストコマンドを実行してください。
  2. ウィンドウのタイトルバーを右クリックして、「プロパティ」を選択します。
  3. レイアウトタブを開き、 「スクリーン バッファ サイズ」を探します。
  4. 高さを増やします。例えば、3000行に設定してから、[OK]を選択します。
  5. テストを再度実行し、出力結果を上方向にスクロールしてください。
レイアウト タブのクラシックな Windows PowerShell プロパティ ダイアログ。画面バッファ サイズの高さが 3000 行に設定されています。
従来のコンソールの「高さ」設定は、表示ウィンドウの上部に残る行数を制御します。

高さはコンソールバッファに保持される行数であり、表示されるウィンドウの高さではありません。値が大きいほど、後で確認できる出力が増えます。コマンドの出力が多く、設定で許容される場合は、より大きな値を選択してください。コンソールは、バッファから既に押し出された行を戻すことはできません。コンソールウィンドウが画面バッファを表示およびスクロールする方法については、Microsoft のWindows コンソールに関するドキュメントを参照してください。

Windowsターミナルでスクロールバックを増やす

PowerShell が Windows ターミナルで実行されている場合、従来のコンソールのプロパティダイアログは必要な設定ではありません。ターミナルはプロファイルごとに独自のスクロールバックを保持しています。

  1. Windowsターミナルの設定を開きます。
  2. Windows PowerShellなど、実際に使用するプロファイルを選択し、 [詳細設定]を開きます。
  3. 履歴のサイズを増やして設定を保存します。20000行を試してみてください。Microsoftのドキュメントによると、デフォルト値は9001行、最大値は32767行です。
Windows PowerShellプロファイルのWindowsターミナル詳細設定。履歴サイズは20000行に設定されています。
端末履歴のサイズは、現在の表示より上に保持される行数を設定します。

この値は、ターミナルが現在のビューより上に表示する行数を制御します。この値は選択したプロファイルに属するため、Windows PowerShellとPowerShell 7を切り替える場合は、もう一方のプロファイルも変更してください。現在のプロパティの詳細については、 MicrosoftのWindowsターミナルの詳細プロファイル設定を参照してください。

長い出力を1ページずつ読み込む

ページングは​​、コマンドが多数の結果を返し、それらを表示される順に読みたい場合に便利です。スクロールバックの制限は変更されません。コマンドをパイプで渡すにはOut-Host -Paging、次のようにします。

Get-Process | Out-Host -Paging
PowerShellでGet-Processの出力をOut-Host -Paging経由で表示し、スペース、エンター、Qキーで操作できるようにする。
スペースキーで1ページ進み、エンターキーで1行進み、Qキーでページングを終了します。

次のページへ進むにはスペースキー、次の行へ進むにはエンターキー、ページングを停止するにはQキーを押してください。この-PagingパラメーターはPowerShell ISEホストではサポートされていません。動作とキーについては、MicrosoftのWindows PowerShell 5.1 Out-Hostリファレンスを参照してください。

出力結果をトランスクリプトに保存する

トランスクリプトは、長いコマンドの実行後、またはコンソールが閉じられた後に参照できるテキストファイルを作成します。コマンドを実行する前に、トランスクリプトを起動してください。

Start-Transcript
Start-Transcript、Get-Processの出力、およびStop-Transcriptを示す、プレーンテキスト形式のPowerShellトランスクリプトの抜粋。
トランスクリプトは、Stop-Transcriptが実行されるまで、コマンドとコンソール出力を記録します。

Windowsでは、PowerShellはデフォルトの文字起こしファイルをドキュメントフォルダに保存し、録音開始時にファイルパスを報告します。完了したら、以下を実行してください。

Stop-Transcript

トランスクリプトには、入力されたコマンドとコンソールに表示される出力が含まれるため、機密情報が含まれている可能性のあるプレーンテキスト記録として扱ってください。共有する前にファイルを確認してください。Microsoft は、Start-Transcript リファレンスで既定の場所とトランスクリプトの動作について説明し、 Stop-Transcriptを使用して記録を停止する方法を解説しています。

スクロールバックとコマンド履歴を混同しないでください

変更しても$MaximumHistoryCount、PowerShell の出力のスクロール幅は変わりません。この設定変数は、組み込みのセッション履歴に保持されるコマンド数を制限し、履歴ツールで呼び出せるようにするものであり、ターミナルに表示される出力行数をカウントするものではありません。PowerShell には、PSReadLine によって管理される別の履歴もあります。Microsoft のabout_History リファレンスで、その違いについて説明しています。

それでもスクロールできない場合は、シェルをホストしているアプリを確認し、そのアプリのスクロールバック設定を適用してから、テストに十分な出力が得られるコマンドを再実行してください。今後の行のためにバッファを増やし、永続的な記録が必要な場合はトランスクリプトを使用してください。

コメントを残す

FotoSketcherで写真を絵画、スケッチ、漫画に変換

FotoSketcherで写真を絵画、スケッチ、漫画に変換

FotoSketcher Studioを使えば、写真を絵画、鉛筆画、漫画に変換できます。エフェクトの選択方法、プレビューの調整方法、作品の保存方法を学びましょう。

オーディオ識別ツールで音声ファイルを詳細に分析・識別する

オーディオ識別ツールで音声ファイルを詳細に分析・識別する

オーディオ識別子がビットレート、エンコーダー、タグについて何を明らかにするのか、従来のワークフローがどのように機能するのか、そして現在利用可能なツールの中で、ファイルの検査や楽曲の識別に使えるものはどれなのかを学びましょう。

My Photo Index:Windows用オープンソース写真整理ツール

My Photo Index:Windows用オープンソース写真整理ツール

My Photo Indexは、ローカル画像のタグ付け、評価、閲覧を行うための、Windows向けの旧来の写真カタログツールです。その機能、互換性の制限、および現在もサポートされている代替ツールについてご確認ください。

Attribute Changerを使用してファイルとフォルダの属性、日付、時刻を変更する

Attribute Changerを使用してファイルとフォルダの属性、日付、時刻を変更する

Attribute Changerを使用して、Windowsファイルの属性とタイムスタンプを編集したり、JPEG EXIF写真の日付を更新したり、バッチ変更を安全にプレビューしたりする方法を学びましょう。

Windows 10で各モニターに異なる壁紙を設定する方法

Windows 10で各モニターに異なる壁紙を設定する方法

Windows 10の各モニターに個別の壁紙を設定し、ディスプレイを識別し、画像のフィットを調整し、モニターの選択肢が見つからない場合のトラブルシューティングを行います。

pViewer:最小限の画像ビューアとマンガ&コミックリーダー

pViewer:最小限の画像ビューアとマンガ&コミックリーダー

pViewerの機能、写真モードとコミックモードの仕組み、ダウンロードすべきWindows版、そして旧バージョンと改訂版の違いについて学びましょう。

NeoDownloader:パラメータ設定とウェブサイトからの画像の一括ダウンロード

NeoDownloader:パラメータ設定とウェブサイトからの画像の一括ダウンロード

NeoDownloaderプロジェクトの作成方法、クロール範囲の選択方法、画像フィルタと保存先の設定方法、バッチダウンロードの確認方法を学びましょう。

Windows 7および8でホットキーを使って次のデスクトップ背景に切り替える方法

Windows 7および8でホットキーを使って次のデスクトップ背景に切り替える方法

Windows 7または8用のスライドショーを設定し、簡単なVBScriptショートカットを作成して、キーボードショートカットキーを割り当てて次の壁紙に進めるようにします。

XnConvert:エフェクトの適用と画像フォーマットの一括変換

XnConvert:エフェクトの適用と画像フォーマットの一括変換

XnConvertを使えば、エフェクトの適用、写真のリサイズ、画像フォーマットの一括変換が可能です。出力設定の選択、編集内容のプレビュー、オリジナル画像の保護も行えます。

PickMeApp: 保存された設定でWindowsプログラムを転送する

PickMeApp: 保存された設定でWindowsプログラムを転送する

PickMeAppを使って、インストール済みのWindowsアプリケーションを別のPCに移行しましょう。TAPパッケージの仕組み、設定の取得方法、転送できない可能性のある項目について学びます。