Clear-EventLog
Cancella tutte le voci dai registri eventi specificati nei computer locali o remoti.
Sintassi
Clear-EventLog
[-LogName] <String[]>
[[-ComputerName] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet Clear-EventLog
elimina tutte le voci dai registri eventi specificati nel computer locale o nei computer remoti. Per usare Clear-EventLog
, è necessario essere membri del gruppo Administrators nel computer interessato.
I cmdlet che contengono il sostantivo EventLog
(i cmdlet EventLog
) funzionano solo nei registri eventi classici. Per ottenere eventi dai log che usano la tecnologia Registro eventi di Windows in Windows Vista e versioni successive di Windows, usare il cmdlet Get-WinEvent
.
Esempio
Esempio 1: Cancellare tipi di registro eventi specifici dal computer locale
Clear-EventLog "Windows PowerShell"
Questo comando cancella le voci dal registro eventi di Windows PowerShell nel computer locale.
Esempio 2: Cancellare più tipi di log specifici dai computer locali e remoti
Clear-EventLog -LogName ODiag, OSession -ComputerName localhost, Server02
Questo comando cancella tutte le voci nei log ODiag (Microsoft Office Diagnostics) e Microsoft Office Sessions (OSession) nel computer locale e nel computer remoto Server02.
Esempio 3: Cancellare tutti i log nei computer specificati e quindi visualizzare l'elenco dei registri eventi
Clear-EventLog -LogName Application, System -Confirm
Questo comando richiede conferma prima di eliminare le voci nei registri eventi specificati.
Esempio 4: Cancellare tutti i log nei computer specificati e quindi visualizzare l'elenco dei registri eventi
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
Questa funzione cancella tutti i registri eventi nei computer specificati e quindi visualizza l'elenco dei log eventi risultante.
Si noti che alcune voci sono state aggiunte ai log di sistema e di sicurezza dopo che i log sono stati cancellati, ma prima che siano stati visualizzati.
Parametri
-ComputerName
Specifica un computer remoto. Il valore predefinito è il computer locale.
Digitare il nome NetBIOS, un indirizzo IP (Internet Protocol) o un nome di dominio completo di un computer remoto. Per specificare il computer locale, digitare il nome del computer, un punto (.
) o localhost
.
Questo parametro non si basa sulla comunicazione remota di Windows PowerShell. È possibile utilizzare il parametro ComputerName di Get-EventLog
anche se il computer non è configurato per eseguire comandi remoti.
Tipo: | String[] |
Alias: | Cn |
Posizione: | 1 |
Valore predefinito: | Local computer |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-LogName
Specifica i registri eventi. Immettere il nome del log (il valore della proprietà log non il LogDisplayName) di uno o più registri eventi, separati da virgole. I caratteri jolly non sono consentiti. Questo parametro è obbligatorio.
Importante
Questo parametro deve accettare valori dalla pipeline in base al nome della proprietà. Tuttavia, esiste un bug che impedisce il funzionamento di questo problema. È necessario passare direttamente un valore usando il parametro .
Tipo: | String[] |
Alias: | LN |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-WhatIf
Mostra cosa accadrebbe se il cmdlet viene eseguito. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
None
Non è possibile inviare oggetti tramite pipe a Clear-EventLog
.
Output
None
Questo cmdlet non genera alcun output.
Note
- Per usare
Clear-EventLog
in Windows Vista e versioni successive di Windows, avviare Windows PowerShell con l'opzione Esegui come amministratore.