Clear-EventLog

清除本機或遠端電腦上的指定事件記錄檔中的所有專案。

Syntax

Clear-EventLog
     [-LogName] <String[]>
     [[-ComputerName] <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Description

Cmdlet Clear-EventLog 會從本機電腦或遠端電腦上的指定事件記錄檔中刪除所有專案。 若要使用 Clear-EventLog,您必須是受影響計算機上 管理員 istrators 群組的成員。

包含 EventLog 名詞的 Cmdlet (Cmdlet EventLog ) 僅適用於傳統事件記錄檔。 若要從 Windows Vista 和更新版本的 Windows 中使用 Windows 事件記錄技術的記錄中取得事件,請使用 Get-WinEvent Cmdlet。

範例

範例 1:從本機電腦清除特定事件記錄檔類型

Clear-EventLog "Windows PowerShell"

此命令會清除本機電腦上 Windows PowerShell 事件記錄檔中的專案。

範例 2:從本機和遠端電腦清除特定多個記錄類型

Clear-EventLog -LogName ODiag, OSession -ComputerName localhost, Server02

此命令會清除本機計算機和 Server02 遠端電腦上 Microsoft Office 診斷 (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 參數。

Type:String[]
Aliases:Cn
Position:1
Default value:Local computer
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

執行 Cmdlet 之前先提示您確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LogName

指定事件記錄檔。 輸入一或多個事件記錄檔的 記錄檔名稱(Log 屬性值而非 LogDisplayName),並以逗號分隔。 不允許通配符。 此為必要參數。

重要

此參數應該依屬性名稱接受來自管線的值。 不過,有一個錯誤會防止這種情況運作。 您必須使用 參數直接傳遞值。

Type:String[]
Aliases:LN
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

None

您無法使用管線會傳送至 Clear-EventLog

輸出

None

此 Cmdlet 不會產生任何輸出。

備註

  • 若要在 Clear-EventLog Windows Vista 和更新版本的 Windows 上使用,請使用 [ 以系統管理員 身分執行] 選項啟動 Windows PowerShell。