Windows PowerShellでコマンド履歴を使用する方法
Windows PowerShellには、実行したコマンドに関する詳細情報を提供する組み込みのコマンド履歴機能があります。コマンドプロンプトと同様に、PowerShellは現在のセッションのコマンド履歴のみを記憶します。.
コマンドラインバッファの使い方
PowerShellには技術的に2種類のコマンド履歴があります。まず、コマンドラインバッファがあります。これは、実際にはグラフィカルPowerShell端末アプリケーションの一部であり、基盤となるWindows PowerShellアプリケーションの一部ではありません。いくつかの基本機能があります。
- 上矢印:直前に入力したコマンドを思い出してください。キーを繰り返し押すと、コマンド履歴を確認できます。.
- 下矢印:次に入力したコマンドを思い出してください。キーを繰り返し押すと、コマンド履歴を確認できます。.
- F8:現在のコマンドラインのテキストと一致するコマンドをコマンド履歴から検索してください。したがって、「p」で始まるコマンドを検索する場合は、コマンドラインに「p」と入力してから、F8キーを繰り返しタップして、履歴内の「a」で始まるコマンドを順に表示します。.
デフォルトでは、バッファは最後に入力した50個のコマンドを記憶しています。これを変更するには、PowerShellプロンプトウィンドウのタイトルバーを右クリックし、「プロパティ」を選択して、コマンド履歴の「バッファサイズ」の値を変更します。.
PowerShellの履歴を表示する方法
Windows PowerShell自体は、現在のPowerShellセッションで入力したコマンドの履歴を保持しています。履歴を表示して作業するために、いくつかの付属のコマンドレットを使用できます。.
入力したコマンドの履歴を表示するには、次のコマンドレットを実行します。
取得履歴
結果の出力を 選択文字列
コマンドレットと検索するテキストを指定します。以下のコマンドレットの「例」を、検索したいテキストに置き換えます。
取得履歴| Select-String -Pattern "例"
各コマンドの実行状況とその開始時刻と終了時刻を表示する、より詳細なコマンド履歴を表示するには、次のコマンドを実行します。
取得履歴|フォーマットリスト - プロパティ*
デフォルトでは、 取得履歴
コマンドレットは、最新の32個の履歴エントリのみを表示します。多数の履歴エントリを表示または検索する場合は、 -カウント
以下のように、PowerShellに表示する履歴エントリの数を指定するオプション。
取得履歴 - カウント1000取得履歴 - カウント1000選択 - 文字列 - パターン "例"フォーマットリスト - プロパティ*
履歴からコマンドを実行する方法
履歴からコマンドを実行するには、次のコマンドレットを使用して、履歴アイテムのID番号を指定します。 取得履歴
コマンドレット:
呼び出し履歴#
履歴から2つのコマンドを繰り返し実行するには、次のようにします。 呼び出し履歴
同じ行に2回、セミコロンで区切ります。たとえば、履歴の最初のコマンドをすばやく実行し、次に2番目のコマンドをすばやく実行するには、次のように実行します。
呼び出し履歴1;呼び出し履歴2
PowerShellの履歴を消去する方法
入力したコマンドの履歴を消去するには、次のコマンドレットを実行します。
履歴をクリア
コマンドラインバッファはPowerShellの履歴とは別のものです。だから、走った後も 履歴をクリア
, 上下の矢印キーを押し続けて、入力したコマンドをスクロールできます。ただし、実行した場合 取得履歴
, あなたのPowerShell履歴は実際には空であることがわかります.
PowerShellはセッション間の履歴を記憶しません。現在のセッションの両方のコマンド履歴を消去するには、PowerShellウィンドウを閉じるだけです。.
履歴を消去した後でPowerShellウィンドウを消去したい場合は、次のコマンドを実行してください。 クリア
コマンド:
クリア
PowerShellの履歴を保存してインポートする方法
後で参照できるように現在のセッションのPowerShellコマンド履歴を保存したい場合は、それを実行できます。.
取得履歴| Export-Clixml -Path c:\ users \ name \ desktop \ commands.xml
これにより、コマンド履歴が各XMLコマンドの「StartExecutionTime」および「EndExecutionTime」値を含む詳細なXMLファイルとしてエクスポートされ、コマンドの実行日時と完了までの所要時間がわかります。.
PowerShellの履歴をこのようなXMLファイルにエクスポートしたら、Add-Historyコマンドレットを使用して、そのユーザー(またはXMLファイルを送信した他のユーザー)が別のPowerShellセッションにインポートできます。
追加 - 履歴 - 入力オブジェクト(インポート - クリック - パスC:¥users¥name¥desktop¥commands.xml)
あなたが実行した場合 取得履歴
このようなXMLファイルをインポートした後のコマンドレットでは、XMLファイルからのコマンドが現在のPowerShellセッションの履歴にインポートされたことがわかります。.