В някои случаи искате да изтриете всички записи в дневника на събитията на Windows на компютър или сървър. Разбира се, почистването на системните регистрационни файлове може да се извърши и от графичното прихващане на събитието. - Eventvwr.msc (RMB в желания журнал -> Clear Log), но като се започне от Vista, Windows използва няколко десетки регистрационни файлове за различни системни компоненти и изчистването им от конзолата на Event Viewer ще бъде доста досадно. Много по-лесно е да изчистите регистрационните файлове от командния ред: използвайки PowerShell или вградената помощна програма wevtutil.
Съдържание:
- Изчистване на дневниците на събитията с PowerShell
- Изчистване на регистрационни файлове с помощта на конзолната програма WevtUtil.exe
Изчистване на дневниците на събитията с PowerShell
Ако сте инсталирали PowerShell 3 (по подразбиране той вече е инсталиран в Windows 8 / Windows Server 2012 и по-нова версия), можете да използвате командлети, за да получите списъка с журнали и да ги почистите. Get-EventLog и Изчисти събития.
Стартирайте конзолата PowerShell с права на администратор и използвайте следната команда, за да изброите всички класически дневници на събития в системата с техните максимални размери и броя на събитията в тях.
Get-EventLog -LogName *
За да изтриете всички събития от конкретен дневник на събития (например системния дневник), използвайте командата:
Система Clear-EventLog -LogName
В резултат на това всички събития от този дневник ще бъдат изтрити и само едно събитие от EventId ще остане в дневника на събитията 104 с текста "Файлът на системния журнал беше изчистен".
За да изчистите всички дневници на събития, трябва да пренасочите имената на журналите към тръбопровода, но за съжаление това е забранено. Следователно ще трябва да използваме цикъла ForEach:
Get-EventLog -LogName * | ForEach Clear-EventLog $ _. Log
По този начин всички класически дневници на EventLogs ще бъдат изчистени..
Изчистване на регистрационни файлове с помощта на конзолната програма WevtUtil.exe
За работа със събития в Windows, мощна програма за команден ред е достъпна от доста време. WevtUtil.Търсейки. Синтаксисът му е малко сложен на пръв поглед. Ето, например, каква помощ се връща помощната програма:
За да изброите регистрационните файлове на събитията, регистрирани в системата, изпълнете командата:
WevtUtil enum-logs
или по-кратка опция:
Wevt util el
На екрана ще се покаже доста впечатляващ списък с налични списания..
забележка. Можете да изчислите техния брой с помощта на командатаWevtUtil el | Мярка-обект
. В моя случай има 1 053 различни регистрационни файлове в Windows 10).Можете да получите по-подробна информация в конкретно списание:
Настройка на WevtUtil gl
Почистването на събитията в конкретен дневник се извършва по следния начин:
Настройка на WevtUtil cl
Преди почистване можете да архивирате събитията в дневника, като ги запишете във файл:
Настройка на WevtUtil cl /bu:SetupLog_Bak.evtx
За да изчистите всички регистрационни файлове наведнъж, можете да използвате командлета Powershell получавам-WinEvent за да получите всички лог обекти и Wevtutil.exe, за да ги почистите:
Get-WinEvent -ListLog * -Force | % Wevtutil.exe cl $ _. LogName
или така
Wevtutil el | ForEach wevtutil cl “$ _”
забележка. В нашия пример 3 регистрационни файла не могат да бъдат изчистени поради грешка в достъпа. Струва си да опитате да изчистите съдържанието на тези регистрационни файлове от конзолата за преглед на събития..
Почистването на лога може да се извърши и от класическия команден ред:
for / F "tokens = *"% 1 in ('wevtutil.exe el') DO wevtutil.exe cl "% 1"