Удаляет журнал событий или отменяет регистрацию источника событий.
Синтаксис
Remove-EventLog [-LogName] <string[]> [[-ComputerName] <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>] Remove-EventLog [[-ComputerName] <string[]>] [-Source <string[]>] [-Confirm] [-WhatIf] [<CommonParameters>]
Описание
Командлет Remove-EventLog удаляет файл журнала событий с локального или удаленного компьютера и отменяет регистрацию всех источников событий для журнала. Кроме того, этот командлет можно использовать для отмены регистрации источников событий без удаления каких-либо журналов событий.
Командлеты, в имени которых содержится существительное EventLog (командлеты EventLog) работают только с классическими журналами событий. Чтобы получать события из журналов, основанных на технологии журнала событий Windows (в Windows Vista и более поздних версиях Windows), используйте командлет Get-WinEvent.
Параметры
-ComputerName <string[]>
Задает удаленный компьютер. По умолчанию используется значение "Локальный компьютер".
Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компьютера. Чтобы указать локальный компьютер, введите имя компьютера, точку (.) или "localhost".
Этот параметр не использует удаленное взаимодействие Windows PowerShell. Параметр ComputerName командлета Remove-EventLog можно использовать, даже если компьютер не настроен на выполнение удаленных команд.
Обязательно? |
false |
Позиция? |
2 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-LogName <string[]>
Задает журналы событий. Введите имена (значение свойства Log; а не свойства LogDisplayName) одного или нескольких журналов событий, разделенные запятыми. Подстановочные знаки запрещены. Это обязательный параметр.
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Source <string[]>
Отменяет регистрацию указанных источников событий. Введите имена источников (не имена исполняемых файлов), разделяя их запятыми.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Confirm
Запрашивает подтверждение перед выполнением команды.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-WhatIf
Описывает, что произойдет при выполнении команды, без ее фактического выполнения.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
Нет Передать входные данные этому командлету по конвейеру невозможно. |
Выходные данные |
Нет Этот командлет не возвращает никаких выходных данных. |
Примечания
Чтобы использовать командлет Remove-EventLog в Windows Vista и более поздних версиях Windows, необходимо запускать Windows PowerShell командой "Запуск от имени администратора".
Если удалить журнал событий, а затем повторно создать его, регистрация источников событий, которые использовались с прежним журналом, будет невозможна. Приложения, которые использовали источники событий для внесения записей в исходный журнал, не будут записывать данные в новый журнал.
После отмены регистрации источника событий для конкретного журнала этому источнику может быть запрещена запись данных в другие журналы.
Пример 1
C:\PS>remove-eventlog -logname MyLog Описание ----------- Эта команда удаляет журнал событий MyLog с локального компьютера и отменяет регистрацию источников событий для этого журнала.
Пример 2
C:\PS>remove-eventlog -logname MyLog, TestLog -computername Server01, Server02, localhost Описание ----------- Эта команда удаляет журналы событий MyLog и TestLog с локального компьютера ("localhost") и удаленных компьютеров Server01 и Server02. Команда также отменяет регистрацию источников событий для этих журналов.
Пример 3
C:\PS>remove-eventlog -source MyApp Описание ----------- Эта команда удаляет источник событий MyApp из журналов на локальном компьютере. После выполнения команды программа MyApp не сможет записывать данные в какие-либо журналы событий.
Пример 4
C:\PS>get-eventlog -list Max(K) Retain OverflowAction Entries Log ------ ------ -------------- ------- --- 15,168 0 OverwriteAsNeeded 22,923 Application 15,168 0 OverwriteAsNeeded 53 DFS Replication 512 7 OverwriteOlder 0 Directory Service 15,168 7 OverwriteOlder 0 Hardware Events 512 7 OverwriteOlder 0 Internet Explorer 20,480 0 OverwriteAsNeeded 0 Key Management Service 30,016 0 OverwriteAsNeeded 50,060 Security 15,168 0 OverwriteAsNeeded 27,592 System 15,360 0 OverwriteAsNeeded 18,355 Windows PowerShell 15,168 7 OverwriteAsNeeded 12 ZapLog C:\PS> remove-eventlog -logname ZapLog C:\PS> get-eventlog -list Max(K) Retain OverflowAction Entries Log ------ ------ -------------- ------- --- 15,168 0 OverwriteAsNeeded 22,923 Application 15,168 0 OverwriteAsNeeded 53 DFS Replication 512 7 OverwriteOlder 0 Directory Service 15,168 7 OverwriteOlder 0 Hardware Events 512 7 OverwriteOlder 0 Internet Explorer 20,480 0 OverwriteAsNeeded 0 Key Management Service 30,016 0 OverwriteAsNeeded 50,060 Security 15,168 0 OverwriteAsNeeded 27,592 System 15,360 0 OverwriteAsNeeded 18,355 Windows PowerShell Описание ----------- Эти команды демонстрируют, как вывести список журналов событий на компьютере и проверить, что команда Remove-EventLog выполнена успешно. Первая команда выводит список всех журналов событий на локальном компьютере. Вторая команда удаляет журнал событий ZapLog. Третья команда повторно выводит список журналов событий. Журнал событий ZapLog больше не отображается в списке.
Пример 5
C:\PS>get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'" | foreach {$_.sources} MyApp TestApp C:\PS> remove-eventlog -source MyApp C:\PS> get-wmiobject win32_nteventlogfile -filter "logfilename='TestLog'} | foreach {$_.sources} TestApp Описание ----------- Эти команды с помощью командлета Get-WmiObject выводят список источников событий на локальном компьютере. Эти команды можно использовать для проверки успешного выполнения команды или удаления источника событий. Первая команда получает источники событий журнала TestLog на локальном компьютере. Одним из источников является MyApp. Во второй команде используется параметр Source командлета Remove-EventLog, позволяющий удалить источник событий MyApp. Третья команда идентична первой. Она позволяет убедиться, что источник событий MyApp удален.