Ayer tuve que utilizar el visor de eventos de Windows para obtener información de depuración de un "crash" y me encontré que tenia unos 5.000 registros de todo tipo, un coñazo para eliminarlos uno a uno, y no se pueden eliminar todos a la vez desde la GUI, el CCLEANER no limpia este tipo de basura, así que decidí escribir este pequeño Script en Batch para reciclar los registros.
Quizás a alguien más le sirva de utilidad como complemento de limpieza
@Echo OFF
& Title Windows EventViewer Log Remover Tool, By Elektro.
Set "SC=
%SystemRoot%\System32\SC.exe"
Set "WEVTutil=
%SystemRoot%\System32\WEVTutil.exe"
:: Save the current EventViewer service status.
For /F "Tokens=3 Delims= "
%%#
In ( 'Reg.exe Query "HKLM\SYSTEM\CurrentControlSet\Services\EventLog" /v "Start" ^| Find /I "0x"'
If "
%%#"
EQU "0x2"
(Set "Service.Status=auto"
) If "
%%#"
EQU "0x3"
(Set "Service.Status=demand"
) If "
%%#"
EQU "0x4"
(Set "Service.Status=disabled"
) )
( :: Start EventViewer service.
"%SC%" Config "EventLog" start= "demand"
"%SC%" Start "EventLog"
:: List logs and delete them.
For /F "Delims="
%%#
In ( '"%WEVTutil%" EL'
"%WEVTutil%" CL "%%#"
)
( :: Stop and restore EventViewer service status.
"%SC%" Stop "EventLog"
"%SC%" Config "EventLog" start= "%Service.Status%"
Saludos