Get-History
現在のセッション中に入力されたコマンドの一覧を取得します。
構文
Default (既定)
Get-History
[[-Id] <Int64[]>]
[[-Count] <Int32>]
[<CommonParameters>]
説明
Get-History コマンドレットは、セッション履歴、つまり現在のセッション中に入力されたコマンドの一覧を取得します。
PowerShell では、各セッションの履歴が自動的に保持されます。 セッション履歴のエントリの数は、$MaximumHistoryCount プリファレンス変数の値によって決まります。 Windows PowerShell 3.0 以降では、既定値は 4096 です。
セッション履歴は XML 形式または CSV 形式で保存できます。 既定では、履歴ファイルはホーム ディレクトリに保存されますが、任意の場所にファイルを保存できます。
PowerShell の履歴機能の詳細については、Microsoft Docs の 「about_History 」を参照してください。
例
例 1: セッション履歴を取得する
Get-History
このコマンドは、セッション履歴のエントリを取得します。 既定の表示には、各コマンドとその ID が表示されます。これは、コマンドが実行された順序を示します。
例 2: 文字列を含むエントリを取得する
Get-History | Where-Object {$_.CommandLine -like "*Service*"}
このコマンドは、文字列 service を含むコマンド履歴内のエントリを取得します。 最初のコマンドは、セッション履歴のすべてのエントリを取得します。 パイプライン演算子 (|) は結果を Where-Object コマンドレットに渡し、service を含むコマンドのみを選択します。
例 3: 最大 7 つのエントリをエクスポートする
Get-History -ID 7 -Count 5 | Export-Csv History.csv
このコマンドは、エントリ 7 で終わる最新の 5 つの履歴エントリを取得します。 パイプライン演算子は結果を Export-Csv コマンドレットに渡し、 コマンドレットは履歴をコンマ区切りテキストとして書式設定し、History.csv ファイルに保存します。 このファイルには、履歴をリストとして書式設定するときに表示されるデータが含まれます。 これには、コマンドの状態と開始時刻と終了時刻が含まれます。
例 4: 最新のコマンドを表示する
Get-History -Count 1
このコマンドは、コマンド履歴の最後のコマンドを取得します。 最後のコマンドは、最後に入力したコマンドです。 このコマンドでは、Count パラメーターを使用して、1 つのコマンドのみを表示します。 既定では、 Get-History は最新のコマンドを取得します。 このコマンドは"h -c 1" と省略でき、上方向キーを押すのと同じです。
例 5: 履歴内のエントリのすべてのプロパティを表示する
Get-History | Format-List -Property *
このコマンドは、セッション履歴のエントリのすべてのプロパティを表示します。 パイプライン演算子は、 Get-History コマンドの結果を Format-List コマンドレットに渡し、各履歴エントリのすべてのプロパティを表示します。 これには、コマンドの ID、状態、開始時刻と終了時刻が含まれます。
パラメーター
-Count
このコマンドレットが取得する最新の履歴エントリの数を指定します。 既定では、 Get-History はセッション履歴のすべてのエントリを取得します。 コマンドで Count パラメーターと Id パラメーターの両方を使用する場合、表示は Id パラメーターで指定されたコマンドで終了します。
Windows PowerShell 2.0 では、既定では、 Get-History は最新の 32 個のエントリを取得します。
パラメーターのプロパティ
| 型: | Int32 |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 1 |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Id
セッション履歴内のエントリの ID の配列を指定します。 Get-History は、指定されたエントリのみを取得します。 コマンドで Id パラメーターと Count パラメーターの両方を使用する場合、 Get-History は Id パラメーターで指定されたエントリで終わる最新のエントリを取得します。
パラメーターのプロパティ
| 型: | Int64[] |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 0 |
| 必須: | False |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
Int64
履歴 ID をこのコマンドレットにパイプできます。
出力
HistoryInfo
このコマンドレットは、取得した各履歴項目の履歴オブジェクトを返します。
メモ
- セッション履歴は、セッション中に入力されたコマンドの一覧です。 セッション履歴は、コマンドの実行順序、状態、開始時刻と終了時刻を表します。 各コマンドを入力すると、PowerShell によって履歴に追加され、再利用できるようになります。 コマンド履歴の詳細については、about_Historyを参照してください。
- Windows PowerShell 3.0 以降では、
$MaximumHistoryCount基本設定変数の既定値は 4096 です。 Windows PowerShell 2.0 では、既定値は 64 です。$MaximumHistoryCount変数の詳細については、about_Preference_Variablesを参照してください。