次の方法で共有


Clear-History

PowerShell セッション コマンド履歴からエントリを削除します。

構文

Clear-History
     [[-Id] <int[]>]
     [[-Count] <int>]
     [-Newest]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]
Clear-History
     [[-Count] <int>]
     [-CommandLine <string[]>]
     [-Newest]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

説明

Clear-History PowerShell セッションからコマンド履歴を削除します。 各 PowerShell セッションには、独自のコマンド履歴があります。 コマンド履歴を表示するには、Get-History コマンドレットを使用します。

既定では、Clear-History は PowerShell セッションからコマンド履歴全体を削除します。 Clear-History パラメーターを使用して、選択したコマンドを削除できます。

Clear-History は、PSReadLine コマンド履歴ファイルをクリアしません。 PSReadLine モジュールには、すべての PowerShell セッションのすべての PowerShell コマンドを含む履歴ファイルが格納されます。 PowerShell プロンプトから、キーボードの上下の矢印を使用して、コマンド履歴をスクロールします。 コマンド履歴の PSReadLine 構成を表示するには、Get-PSReadLineOptionを使用します。 PSReadLine PowerShell 5.0 以降に付属しています。 詳細については、about_PSReadLineを参照してください。

例 1: PowerShell セッションからコマンド履歴を削除する

このコマンドは、PowerShell セッションの履歴からすべてのコマンドを削除します。

Get-History

Id CommandLine
  -- -----------
   1 Set-Location .\Test
   2 Update-Help
   3 Set-Location C:\Test\Logs
   4 Get-Location

Clear-History
Get-History

Id CommandLine
  -- -----------
   5 Clear-History

Get-History コマンドレットは、PowerShell セッションの履歴を表示します。 Clear-History コマンド履歴全体を削除します。 Get-History 更新されたコマンド履歴が表示され、以前の履歴が削除されたことを確認します。

例 2: 最新のコマンドを削除する

このコマンドでは、Count パラメーターと Newest パラメーターを使用して、PowerShell セッションの履歴から最新のコマンドを削除します。

Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-Command Clear-History
   3 Get-Command Clear-History -Syntax
   4 Get-Command Clear-History -ShowCommandInfo
   5 Get-Help Get-Alias
   6 Get-Command Get-ChildItem -Syntax
   7 Get-Help Clear-History
   8 Set-Location C:\Test\Logs
   9 Get-Help Get-Variable
  10 Get-Help Get-ChildItem

Clear-History -Count 5 -Newest
Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-Command Clear-History
   3 Get-Command Clear-History -Syntax
   4 Get-Command Clear-History -ShowCommandInfo
   5 Get-Help Get-Alias
  11 Clear-History -Count 5 -Newest

Get-History コマンドレットは、PowerShell セッションの履歴を表示します。 Clear-History は、コマンド履歴を削除するために使用されます。 Count パラメーターは、削除するコマンドの数を指定します。指定した IDを含みます。Newest パラメーターは、履歴から最新のコマンドをクリアすることを指定します。 Get-History 更新されたコマンド履歴が表示され、最新の 5 つのコマンドが削除されたことを確認します。ID 6 - ID 10

例 3: 特定の条件に一致するコマンドを削除する

このコマンドは、CommandLine パラメーターで定義されている特定の条件に一致するコマンドを削除します。

Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-Command Clear-History
   3 Get-Command Clear-History -Syntax
   4 Get-Command Clear-History -ShowCommandInfo
   5 Get-Help Get-Alias
   6 Get-Command Get-ChildItem -Syntax
   7 Get-Help Clear-History

Clear-History -CommandLine *Help*, *Syntax
Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-Command Clear-History
   4 Get-Command Clear-History -ShowCommandInfo
   8 Clear-History -CommandLine *Help*, *Syntax

Get-History コマンドレットは、PowerShell セッションの履歴を表示します。 Clear-History コマンド履歴を削除します。 CommandLine パラメーターは、ヘルプ を含むか、構文で終わるコマンドを指定します。 Get-History 更新されたコマンド履歴を表示し、ID 3 ID 5ID 6ID 7コマンドが削除されたことを確認します。

例 4: ID 番号でコマンドを削除する

このコマンドは、IDを使用して特定の履歴項目を削除します。複数のコマンドを削除するには、ID 番号のコンマ区切りのリストを送信します。

Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-History
   3 Get-Help Get-Alias
   4 Get-Command Clear-History
   5 Get-Command Clear-History -Syntax
   6 Get-Command Clear-History -ShowCommandInfo

Clear-History -Id 3, 5
Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-History
   4 Get-Command Clear-History
   6 Get-Command Clear-History -ShowCommandInfo
   7 Get-History
   8 Clear-History -Id 3, 5

Get-History コマンドレットは、PowerShell セッションの履歴を表示します。 Clear-History コマンド履歴を削除します。 Id パラメーターは、削除するコマンドを指定します。 Get-History 更新されたコマンド履歴が表示され、ID 3Id 5 が削除されたことを確認します。

例 5: ID 番号とカウントでコマンドを削除する

このコマンドでは、ID パラメーターと Count パラメーターを使用して、コマンド履歴を削除します。 コマンドは、指定された ID から、最新から最も古い順に削除されます。

Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-Command Clear-History
   3 Get-Command Clear-History -Syntax
   4 Get-Command Clear-History -ShowCommandInfo
   5 Get-Help Get-Alias
   6 Get-Command Get-ChildItem -Syntax
   7 Get-Help Clear-History
   8 Set-Location C:\Test\Logs
   9 Get-Help Get-Variable
  10 Get-Help Get-ChildItem

Clear-History -Id 7 -Count 5
Get-History

Id CommandLine
  -- -----------
   1 Set-Location C:\Test\
   2 Get-Command Clear-History
   8 Set-Location C:\Test\Logs
   9 Get-Help Get-Variable
  10 Get-Help Get-ChildItem
  11 Clear-History -Id 7 -Count 5

Get-History コマンドレットは、PowerShell セッションの履歴を表示します。 Clear-History コマンド履歴を削除します。 ID パラメーターは、Id 7で始まるよう指定します。 Count パラメーターは、指定した IDを含む 5 つのコマンドを削除するように指定します。Get-History 更新されたコマンド履歴を表示し、5 つのコマンドが削除されたことを確認します。ID 3 - ID 7

パラメーター

-CommandLine

PowerShell セッションからコマンド履歴を削除します。 文字列は完全一致であるか、ワイルドカードを使用して、Get-Historyによって表示される PowerShell セッション履歴のコマンドと一致する必要があります。 複数の文字列を入力した場合、Clear-History は任意の文字列に一致するコマンドを削除します。 CommandLine パラメーターは、Countと共に使用できます。

スペースを含む文字列の場合は、単一引用符を使用します。 詳細については、about_Quoting_Rulesを参照してください。

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:True

-Confirm

Clear-History コマンドレットを実行する前に確認を求めるメッセージが表示されます。

型:SwitchParameter
Aliases:cf
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Count

Clear-History が削除する履歴エントリの数を指定します。 コマンドは、履歴内の最も古いエントリから順に削除されます。

Count パラメーターと Id パラメーターを一緒に使用できます。 Count パラメーターは、削除するコマンドの数を指定します。指定した IDを含みます。指定した IDから、コマンドは逆順に削除されます。 たとえば、ID が 30 で、Count が 10 の場合、Clear-History はアイテム 21 から 30 を削除します。

Count パラメーターと CommandLine パラメーターを一緒に使用できます。 Count は、CommandLine パラメーター値に一致する削除するコマンド 数を指定します。 コマンドは順番に削除されます。

型:Int32
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Id

削除するコマンド履歴 の IDClear-History で指定します。 ID 番号を表示するには、Get-History コマンドレットを使用します。 ID 番号はシーケンシャルであり、コマンドは PowerShell セッション全体で ID 番号を保持します。 Id パラメーターは、Count および Newestと共に使用できます。

型:Int32[]
配置:0
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Newest

Newest パラメーターを使用すると、Clear-History 履歴の最新のエントリが削除されます。 既定では、Clear-History は履歴内の最も古いエントリを削除します。

Newest パラメーターは、IDCountと共に使用できます。 Count パラメーターは、削除するコマンドの数を指定します。指定した IDを含みます。指定した IDから、コマンドは順番に削除されます。 たとえば、ID が 30 で、カウント が 10 の場合、Clear-History はアイテム 30 から 39 を削除します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-WhatIf

Clear-History コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。

型:SwitchParameter
Aliases:wi
配置:Named
規定値:False
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

None

このコマンドレットにオブジェクトをパイプすることはできません。

出力

None

このコマンドレットは出力を返しません。

メモ

PowerShell には、Clear-Historyの次のエイリアスが含まれています。

  • すべてのプラットフォーム:
    • clhy

PowerShell セッション履歴は、PowerShell セッション中に入力されたコマンドの一覧です。 履歴の表示、コマンドの追加と削除、履歴からのコマンドの実行を行うことができます。 詳細については、about_Historyを参照してください。

セッション履歴は、PSReadLine モジュールによって管理される履歴とは別に管理されます。 両方の履歴は、PSReadLine が読み込まれるセッションで使用できます。 このコマンドレットは、セッション履歴でのみ機能します。 詳細については、about_PSReadLineを参照してください。