Clear-EventLog
ローカル コンピューターまたはリモート コンピューター上の指定したイベント ログからすべてのエントリをクリアします。
構文
Clear-EventLog
[-LogName] <String[]>
[[-ComputerName] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Clear-EventLog
コマンドレットは、ローカル コンピューターまたはリモート コンピューター上の指定したイベント ログからすべてのエントリを削除します。 Clear-EventLog
を使用するには、影響を受けるコンピューターの Administrators グループのメンバーである必要があります。
EventLog
名詞 (EventLog
コマンドレット) を含むコマンドレットは、クラシック イベント ログでのみ機能します。 Windows Vista 以降のバージョンの Windows で Windows イベント ログ テクノロジを使用するログからイベントを取得するには、 Get-WinEvent
コマンドレットを使用します。
例
例 1: ローカル コンピューターから特定のイベント ログの種類をクリアする
Clear-EventLog "Windows PowerShell"
このコマンドは、ローカル コンピューター上の Windows PowerShell イベント ログからエントリをクリアします。
例 2: ローカル コンピューターとリモート コンピューターから特定の複数のログの種類をクリアする
Clear-EventLog -LogName ODiag, OSession -ComputerName localhost, Server02
このコマンドは、ローカル コンピューターと Server02 リモート コンピューター上の Microsoft Office Diagnostics (ODiag) ログと Microsoft Office セッション (OSession) ログのすべてのエントリをクリアします。
例 3: 指定したコンピューター上のすべてのログをクリアし、イベント ログの一覧を表示する
Clear-EventLog -LogName application, system -confirm
このコマンドでは、指定したイベント ログのエントリを削除する前に確認を求められます。
例 4: 指定したコンピューター上のすべてのログをクリアし、イベント ログの一覧を表示する
function clear-all-event-logs ($computerName="localhost")
{
$logs = Get-EventLog -ComputerName $computername -List | ForEach-Object {$_.Log}
$logs | ForEach-Object {Clear-EventLog -ComputerName $computername -LogName $_ }
Get-EventLog -ComputerName $computername -list
}
clear-all-event-logs -ComputerName Server01
Max(K) Retain OverflowAction Entries Log
------ ------ -------------- ------- ---
15,168 0 OverwriteAsNeeded 0 Application
15,168 0 OverwriteAsNeeded 0 DFS Replication
512 7 OverwriteOlder 0 DxStudio
20,480 0 OverwriteAsNeeded 0 Hardware Events
512 7 OverwriteOlder 0 Internet Explorer
20,480 0 OverwriteAsNeeded 0 Key Management Service
16,384 0 OverwriteAsNeeded 0 Microsoft Office Diagnostics
16,384 0 OverwriteAsNeeded 0 Microsoft Office Sessions
30,016 0 OverwriteAsNeeded 1 Security
15,168 0 OverwriteAsNeeded 2 System
15,360 0 OverwriteAsNeeded 0 Windows PowerShell
この関数は指定されたコンピューター上のすべてのイベント ログをクリアし、その結果のイベント ログの一覧を表示します。
クリアした後で表示される前にシステム ログやセキュリティ ログに追加されたエントリがあることに注意してください。
パラメーター
-ComputerName
リモート コンピューターを指定します。 既定値はローカル コンピューターです。
リモート コンピューターの NetBIOS 名、インターネット プロトコル (IP) アドレス、または完全修飾ドメイン名を入力します。 ローカル コンピューターを指定するには、コンピューター名、ドット (.
)、または localhost
を入力します。
このパラメーターは、Windows PowerShell リモート処理に依存しません。 コンピューターがリモート コマンドを実行するように構成されていない場合でも、Get-EventLog
の ComputerName パラメーターを使用できます。
型: | String[] |
Aliases: | Cn |
配置: | 1 |
規定値: | Local computer |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-LogName
イベント ログを指定します。 1 つ以上のイベント ログのログ名 (LogDisplayName ではなく、Log プロパティの値) をコンマで区切って入力します。 ワイルドカード文字は使用できません。 このパラメーターは必須です。
重要
このパラメーターは、プロパティ名でパイプラインからの値を受け入れることになっています。 ただし、この機能を妨げるバグがあります。 パラメーターを直接使用して値を渡す必要があります。
型: | String[] |
Aliases: | LN |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
オブジェクトをパイプ処理して Clear-EventLog
することはできません。
出力
None
このコマンドレットは出力を生成しません。
メモ
- Windows Vista 以降のバージョンの Windows で
Clear-EventLog
を使用するには、 Run as administrator オプションを使用して Windows PowerShell を起動します。
関連リンク
PowerShell