Löscht alle Einträge aus angegebenen Ereignisprotokollen auf lokalen oder Remotecomputern.
Syntax
Clear-EventLog [-LogName] <string[]> [[-ComputerName] <string[]>] [-Bestätigung] [-WhatIf] [<CommonParameters>]
Beschreibung
Das Cmdlet "Clear-EventLog" löscht alle Einträge aus den angegebenen Ereignisprotokollen auf dem lokalen Computer oder auf Remotecomputern. Damit Sie "Clear-EventLog" verwenden können, müssen Sie Mitglied der Gruppe "Administratoren" auf dem betroffenen Computer sein.
Die Cmdlets, die das Substantiv "EventLog" enthalten (die EventLog-Cmdlets) können nur für klassische Ereignisprotokolle verwendet werden. Verwenden Sie Get-WinEvent, um Ereignisse aus Protokollen abzurufen, die die Windows-Ereignisprotokolltechnologie in Windows Vista und höheren Versionen von Windows verwenden.
Parameter
-ComputerName <string[]>
Gibt einen Remotecomputer an. Der Standardwert ist der lokale Computer.
Geben Sie den NetBIOS-Namen, eine IP-Adresse oder den vollqualifizierten Domänennamen eines Remotecomputers ein. Um den lokalen Computer anzugeben, geben Sie den Computernamen, einen Punkt (.) oder "localhost" ein.
Dieser Parameter beruht nicht auf Windows PowerShell-Remoting. Sie können den ComputerName-Parameter von Get-EventLog auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen konfiguriert ist.
Erforderlich? |
false |
Position? |
2 |
Standardwert |
Local computer |
Pipelineeingaben akzeptieren? |
true (ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-LogName <string[]>
Gibt die Ereignisprotokolle an. Geben Sie den Protokollnamen (den Wert der Log-Eigenschaft, nicht den "LogDisplayName") eines oder mehrerer Ereignisprotokolle durch Trennzeichen getrennt ein. Platzhalterzeichen sind nicht zulässig. Dieser Parameter ist erforderlich.
Erforderlich? |
true |
Position? |
1 |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-Bestätigung
Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-WhatIf
Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
<CommonParameters>
Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.
Eingaben und Ausgaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.
Eingaben |
None Objekte können nicht über die Pipeline an Clear-EventLog übergeben werden. |
Ausgaben |
None Dieses Cmdlet generiert keine Ausgabe. |
Hinweise
Wenn Sie Clear-EventLog unter Windows Vista und höheren Versionen von Windows verwenden möchten, starten Sie Windows PowerShell mit der Option "Als Administrator ausführen".
Beispiel 1
C:\PS>clear-eventlog "Windows PowerShell" Beschreibung ----------- Dieser Befehl löscht die Einträge aus dem Ereignisprotokoll "Windows PowerShell" auf dem lokalen Computer.
Beispiel 2
C:\PS>clear-eventlog -logname ODiag, OSession -computername localhost, Server02 Beschreibung ----------- Dieser Befehl löscht alle Einträge in den Microsoft Office-Diagnostikprotokollen (ODiag) und Microsoft Office-Sitzungsprotokollen (OSession) auf dem lokalen Computer und dem Remotecomputer "Server02".
Beispiel 3
C:\PS>clear-eventlog -log application, system -confirm Beschreibung ----------- Mit diesem Befehl werden Sie zur Bestätigung aufgefordert, bevor die Einträge in den angegebenen Ereignisprotokollen gelöscht werden.
Beispiel 4
C:\PS>function clear-all-event-logs ($computerName="localhost") { $logs = get-eventlog -computername $computername -list | foreach {$_.Log} $logs | foreach {clear-eventlog -comp $computername -log $_ } get-eventlog -computername $computername -list } C:\PS> clear-all-event-logs -comp 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 Beschreibung ----------- Diese Funktion löscht alle Ereignisprotokolle auf den angegebenen Computern und zeigt dann die resultierende Ereignisprotokollliste an. Beachten Sie, dass den System- und Sicherheitsprotokollen einige Einträge nach dem Löschen, aber vor dem Anzeigen der Protokolle hinzugefügt wurden.
Siehe auch