다음을 통해 공유


Clear-EventLog

로컬 또는 원격 컴퓨터의 지정된 이벤트 로그에서 모든 항목을 지웁니다.

구문

Clear-EventLog
     [-LogName] <String[]>
     [[-ComputerName] <String[]>]
     [-WhatIf]
     [-Confirm]
     [<CommonParameters>]

Description

cmdlet은 Clear-EventLog 로컬 컴퓨터 또는 원격 컴퓨터의 지정된 이벤트 로그에서 모든 항목을 삭제합니다. 사용 Clear-EventLog하려면 영향을 받는 컴퓨터의 Administrators 그룹의 구성원이어야 합니다.

명사(EventLogcmdlet)를 포함하는 EventLog cmdlet은 클래식 이벤트 로그에서만 작동합니다. Windows Vista 이상 버전의 Windows에서 Windows 이벤트 로그 기술을 사용하는 로그에서 이벤트를 얻으려면 cmdlet을 Get-WinEvent 사용합니다.

예제

예제 1: 로컬 컴퓨터에서 특정 이벤트 로그 형식 지우기

Clear-EventLog "Windows PowerShell"

이 명령은 로컬 컴퓨터의 Windows PowerShell 이벤트 로그에서 항목을 지웁니다.

예제 2: 로컬 및 원격 컴퓨터에서 특정 여러 로그 형식 지우기

Clear-EventLog -LogName ODiag, OSession -ComputerName localhost, Server02

이 명령은 로컬 컴퓨터와 Server02 원격 컴퓨터에서 Microsoft Office 진단(ODiag) 및 Microsoft Office 세션(OSession) 로그의 모든 항목을 지웁니다.

예제 3: 지정된 컴퓨터의 모든 로그를 지웁니다. 그런 다음 이벤트 로그 목록을 표시합니다.

Clear-EventLog -LogName application, system -confirm

이 명령은 지정된 이벤트 로그의 항목을 삭제하기 전에 확인 메시지를 표시합니다.

예제 4: 지정된 컴퓨터의 모든 로그를 지웁니다. 그런 다음 이벤트 로그 목록을 표시합니다.

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

이 함수는 지정된 컴퓨터의 모든 이벤트 로그를 지운 다음 결과 이벤트 로그 목록을 표시합니다.

로그를 지운 후 표시하기 전에 시스템 로그 및 보안 로그에 몇 개의 항목이 추가되었습니다.

매개 변수

-ComputerName

원격 컴퓨터를 지정합니다. 기본값은 로컬 컴퓨터입니다.

NetBIOS 이름, IP(인터넷 프로토콜) 주소 또는 원격 컴퓨터의 정규화된 도메인 이름을 입력합니다. 로컬 컴퓨터를 지정하려면 컴퓨터 이름, 점(.) 또는 localhost.를 입력합니다.

이 매개 변수는 Windows PowerShell 원격을 사용하지 않습니다. 컴퓨터가 원격 명령을 실행하도록 구성되지 않은 경우에도 ComputerName 매개 변수 Get-EventLog 를 사용할 수 있습니다.

형식:String[]
별칭:Cn
Position:1
Default value:Local computer
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

형식:SwitchParameter
별칭:cf
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-LogName

이벤트 로그를 지정합니다. 하나 이상의 이벤트 로그의 로그 이름(LogDisplayName이 아닌 Log 속성 값)을 쉼표로 구분하여 입력합니다. 와일드카드 문자는 허용되지 않습니다. 이 매개 변수는 필수입니다.

Important

이 매개 변수는 속성 이름으로 파이프라인의 값을 허용해야 합니다. 그러나 이 작업이 작동하지 않는 버그가 있습니다. 매개 변수를 사용하여 값을 직접 전달해야 합니다.

형식:String[]
별칭:LN
Position:0
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
별칭:wi
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

None

개체를 으로 파이프할 Clear-EventLog수 없습니다.

출력

None

이 cmdlet은 어떠한 출력도 생성하지 않습니다.

참고

  • Windows Vista 이상 버전의 Windows에서 사용 Clear-EventLog 하려면 관리자 권한으로 실행 옵션을 사용하여 Windows PowerShell을 시작합니다.