Clear-EventLog
Löscht alle Einträge aus angegebenen Ereignisprotokollen auf den lokalen oder Remotecomputern.
Syntax
Default (Standard)
Clear-EventLog
[-LogName] <String[]>
[[-ComputerName] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Cmdlet Clear-EventLog löscht alle Einträge aus den angegebenen Ereignisprotokollen auf dem lokalen Computer oder auf Remotecomputern. Um Clear-EventLogzu verwenden, müssen Sie Mitglied der Gruppe "Administratoren" auf dem betroffenen Computer sein.
Die Cmdlets, die das EventLog Substantiv (die EventLog Cmdlets) enthalten, funktionieren nur in klassischen Ereignisprotokollen. Um Ereignisse aus Protokollen abzurufen, die die Windows-Ereignisprotokolltechnologie in Windows Vista und höheren Versionen von Windows verwenden, verwenden Sie das Cmdlet Get-WinEvent.
Beispiele
Beispiel 1: Löschen bestimmter Ereignisprotokolltypen vom lokalen Computer
Clear-EventLog "Windows PowerShell"
Mit diesem Befehl werden die Einträge aus dem Windows PowerShell-Ereignisprotokoll auf dem lokalen Computer gelöscht.
Beispiel 2: Löschen bestimmter mehrerer Protokolltypen von lokalen und Remotecomputern
Clear-EventLog -LogName ODiag, OSession -ComputerName localhost, Server02
Mit diesem Befehl werden alle Einträge in den Microsoft Office Diagnostics -Protokollen (ODiag) und Microsoft Office-Sitzungen (OSession) auf dem lokalen Computer und dem Server02-Remotecomputer gelöscht.
Beispiel 3: Löschen aller Protokolle auf den angegebenen Computern und Anzeigen der Ereignisprotokollliste
Clear-EventLog -LogName Application, System -Confirm
Dieser Befehl fordert Sie zur Bestätigung auf, bevor Sie die Einträge in den angegebenen Ereignisprotokollen löschen.
Beispiel 4: Löschen aller Protokolle auf den angegebenen Computern und Anzeigen der Ereignisprotokollliste
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
Diese Funktion löscht alle Ereignisprotokolle auf den angegebenen Computern und zeigt dann die resultierende Ereignisprotokollliste an.
Beachten Sie, dass einige Einträge zu den System- und Sicherheitsprotokollen hinzugefügt wurden, nachdem die Protokolle gelöscht wurden, aber bevor sie angezeigt wurden.
Parameter
-ComputerName
Gibt einen Remotecomputer an. Der Standardwert ist der lokale Computer.
Geben Sie den NetBIOS-Namen, eine IP-Adresse (Internet Protocol) oder einen vollqualifizierten Domänennamen eines Remotecomputers ein. Um den lokalen Computer anzugeben, geben Sie den Computernamen, einen Punkt (.) oder localhostein.
Dieser Parameter basiert nicht auf Windows PowerShell-Remoting. Sie können den ComputerName Parameter von Get-EventLog verwenden, auch wenn Ihr Computer nicht für die Ausführung von Remotebefehlen konfiguriert ist.
Parametereigenschaften
| Typ: | String[] |
| Standardwert: | Local computer |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | Cn |
Parametersätze
(All)
| Position: | 1 |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-Confirm
Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | vgl |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
-LogName
Gibt die Ereignisprotokolle an. Geben Sie den Protokollnamen (den Wert der Log-Eigenschaft nicht den LogDisplayName) eines oder mehrerer Ereignisprotokolle ein, getrennt durch Kommas. Wildcardzeichen sind nicht zulässig. Dieser Parameter ist erforderlich.
Von Bedeutung
Dieser Parameter soll Werte aus der Pipeline anhand des Eigenschaftennamens akzeptieren. Es gibt jedoch einen Fehler, der verhindert, dass dies funktioniert. Sie müssen einen Wert mithilfe des Parameters direkt übergeben.
Parametereigenschaften
| Typ: | String[] |
| Standardwert: | None |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | LN |
Parametersätze
(All)
| Position: | 0 |
| Obligatorisch: | True |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | True |
| Wert aus verbleibenden Argumenten: | False |
-WhatIf
Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Parametereigenschaften
| Typ: | SwitchParameter |
| Standardwert: | False |
| Unterstützt Platzhalter: | False |
| Nicht anzeigen: | False |
| Aliase: | Wi |
Parametersätze
(All)
| Position: | Named |
| Obligatorisch: | False |
| Wert aus Pipeline: | False |
| Wert aus Pipeline nach dem Eigenschaftsnamen: | False |
| Wert aus verbleibenden Argumenten: | False |
CommonParameters
Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.
Eingaben
None
Objekte können nicht an Clear-EventLogweitergeleitet werden.
Ausgaben
None
Dieses Cmdlet generiert keine Ausgabe.
Hinweise
- Um
Clear-EventLogunter Windows Vista und höheren Versionen von Windows zu verwenden, starten Sie Windows PowerShell mit der Option Als Administrator ausführen.