วิธีล้าง Windows Event Log จากบรรทัดคำสั่ง
บ่อยครั้งเมื่อคุณต้องการแก้ไขปัญหาหรือตรวจสอบความสมบูรณ์ของระบบโดยทั่วไป คุณต้องใช้ Event Viewer Event Viewer จะแสดงเหตุการณ์ของ Windows ทั้งหมดที่ได้รับการบันทึก เช่น ข้อมูล ข้อผิดพลาด คำเตือน วิกฤติ และรายละเอียด แต่มีเหตุการณ์มากมายที่นี่ รวมถึงกิจกรรมปกติทั้งหมดที่ได้รับการบันทึก ทำให้ยากต่อการระบุเหตุการณ์ที่เกี่ยวข้องกับสิ่งที่ไม่ทำงานตามที่คาดไว้หรือทำให้เกิดข้อผิดพลาด ดังนั้นในบางครั้ง คุณอาจต้องล้างบันทึกเหตุการณ์ ในบทความนี้ เราจะมาดูวิธีการล้างบันทึกเหตุการณ์โดยอัตโนมัติหรือจากบรรทัดคำสั่ง
โฆษณา
บันทึกระบบและบันทึกแอปพลิเคชันเป็นบันทึกสำคัญสองบันทึกที่คุณอาจต้องการล้างเป็นครั้งคราว คุณสามารถล้างบันทึกเหตุการณ์ใดๆ ได้ด้วยตนเองโดยคลิกขวาและเลือก "ล้างบันทึก..." จากเมนูคลิกขวา อย่างไรก็ตาม คุณอาจต้องการทำให้สิ่งนี้เป็นอัตโนมัติ ดังนั้นทุก 7 วันหรือ 15 วัน บันทึกเหตุการณ์จะถูกล้าง นอกจากนี้คุณยังสามารถ ตั้งค่างานที่กำหนดเวลาไว้ซึ่งทำงานโดยอัตโนมัติโดยใช้ ElevatedShortcut เพื่อล้างบันทึกเหตุการณ์
วิธีล้างเฉพาะบันทึกเหตุการณ์เฉพาะโดยใช้พรอมต์คำสั่ง
- เปิดพรอมต์คำสั่งในฐานะผู้ดูแลระบบ (ดูวิธีการ).
- ในการล้างบันทึกเฉพาะ คุณต้องรู้ชื่อก่อน หากต้องการดูรายการบันทึกเหตุการณ์ ให้พิมพ์:
wevtutil el
- สิ่งนี้สร้างรายการบันทึกที่ยาวมาก คุณสามารถใช้คำสั่ง: 'wevtutil el | มากขึ้น' (โดยไม่ใส่เครื่องหมายคำพูด) เพื่อแสดงเอาต์พุตทีละหน้าจอ หรือคุณสามารถส่งออกไปยังไฟล์ข้อความโดยใช้คำสั่ง:
เกี่ยวกับเรา > Loglist.txt
สิ่งนี้จะสร้างไฟล์ข้อความ Loglist.txt ในไดเร็กทอรีการทำงานของพรอมต์คำสั่ง (โฟลเดอร์เดียวกับที่คุณอยู่ที่พรอมต์คำสั่ง)
- เมื่อคุณทราบชื่อบันทึกที่คุณต้องการล้างแล้ว คุณสามารถใช้คำสั่งต่อไปนี้:
wevtutil cl แอปพลิเคชัน
- คำสั่งข้างต้นล้างบันทึกแอปพลิเคชัน หากต้องการล้างบันทึกระบบ ให้ใช้: 'wevtutil cl System' (โดยไม่ใส่เครื่องหมายคำพูด)
วิธีล้างบันทึกเหตุการณ์ทั้งหมดโดยใช้พรอมต์คำสั่ง
- เปิด Notepad และคัดลอกและวางข้อความต่อไปนี้ลงไป:
@ปิดเสียงสะท้อน FOR /F "tokens=1,2*" %%V IN ('bcdedit') ตั้งค่า adminTest=%%V IF (%adminTest%)==(Access) ไปที่ noAdmin สำหรับ /F "tokens=*" %%G in ('wevtutil.exe el') DO (โทร :do_clear "%%G") เสียงสะท้อน บันทึกเหตุการณ์สะท้อนถูกล้าง! ไปที่จุดสิ้นสุด :do_clear. ล้างเสียงสะท้อน %1 wevtutil.exe cl %1. goto :eof. :noAdmin. echo คุณต้องเรียกใช้สคริปต์นี้ในฐานะผู้ดูแลระบบ! เสียงสะท้อน :ตอนจบ
- บันทึกเป็นแบตช์ไฟล์และตั้งชื่อตามที่คุณต้องการ เช่น ClEvtLog.bat หรือ ClEvtLog.cmd
เคล็ดลับ: หากต้องการบันทึกข้อความที่มีนามสกุล .bat หรือ .cmd โดยตรง ให้พิมพ์ชื่อไฟล์ในเครื่องหมายคำพูด นั่นคือ "ClEvtLog.bat" หรือ "ClEvtLog.cmd" - คัดลอกไฟล์แบตช์นี้ไปยังไดเร็กทอรีบางตัวในพาธระบบของคุณ เช่น C:\Windows ดังนั้นคุณจึงไม่ต้องพิมพ์พาธแบบเต็มทุกครั้งที่เรียกใช้
- เปิดพรอมต์คำสั่งที่ยกระดับ (ดูวิธีการ).
- เรียกใช้แบตช์ไฟล์จากพรอมต์คำสั่ง: ClEvtLog.cmd คุณยังสามารถเรียกใช้โดยตรงโดยไม่ต้องเปิดพรอมต์คำสั่งหรือใช้ cmd /c เพื่อให้พรอมต์คำสั่งปิดหลังจากเรียกใช้
วิธีล้างบันทึกเหตุการณ์ทั้งหมดโดยใช้ PowerShell
- เปิด PowerShell ในฐานะผู้ดูแลระบบ (ดูวิธีการ)
- พิมพ์หรือคัดลอกและวางคำสั่งต่อไปนี้ลงใน PowerShell:
wevtutil el | Foreach-Object {wevtutil cl "$_"}
- กดปุ่มตกลง. รอสองสามวินาทีเพื่อล้างบันทึกทั้งหมด คุณสามารถออกจาก PowerShell ได้โดยพิมพ์ Exit
วิธีล้างบันทึกเหตุการณ์ทั้งหมดโดยใช้ VBScript/WMI (เฉพาะบันทึกเหตุการณ์แบบคลาสสิกเท่านั้น)
- เปิด Notepad และคัดลอกและวางข้อความต่อไปนี้ลงไป:
strComputer = "." ตั้งค่า objWMIService = GetObject("winmgmts:" _. & "{impersonationLevel=impersonate, (สำรอง, ความปลอดภัย)}!\\" _. & strComputer & "\root\cimv2") ตั้งค่า colLogFiles = objWMIService แบบสอบถาม _. ("เลือก * จาก Win32_NTEventLogFile") สำหรับแต่ละ objLogfile ใน colLogFiles ไฟล์ objLog ClearEventLog() ต่อไป
- บันทึกเป็นไฟล์ VBScript (.VBS) และตั้งชื่อตามต้องการ เช่น ClEvtLog.vbs
เคล็ดลับ: หากต้องการบันทึกข้อความที่มีนามสกุล .vbs โดยตรง ให้พิมพ์ชื่อไฟล์ในเครื่องหมายคำพูด นั่นคือ "ClEvtLog.vbs" - คัดลอกไฟล์ VBScript นี้ไปยังไดเร็กทอรีบางตัวในพาธระบบของคุณ เช่น C:\Windows ดังนั้นคุณจึงไม่ต้องพิมพ์พาธแบบเต็มทุกครั้งที่เรียกใช้
- เปิดพรอมต์คำสั่งที่ยกระดับ (ดูวิธีการ).
- เรียกใช้ไฟล์ VBScript จากพรอมต์คำสั่ง: CScript ClEvtLog.vbs คุณยังสามารถเรียกใช้โดยตรงโดยไม่ต้องเปิดพรอมต์คำสั่งหรือใช้ cmd /c เพื่อให้พรอมต์คำสั่งปิดหลังจากเรียกใช้
วิธี VBScript/WMI จะล้างเฉพาะบันทึกเหตุการณ์แบบคลาสสิกเท่านั้น (แอปพลิเคชัน ความปลอดภัย ระบบ ฯลฯ ไม่ใช่ประเภท XML ใหม่ของบันทึกเหตุการณ์ที่ PowerShell หรือ wevtutil.exe ล้าง)
โปรดทราบด้วยว่าสคริปต์เหล่านี้จะไม่สำรองข้อมูลบันทึกก่อนที่จะถูกล้าง หากคุณต้องการสำรองบันทึกเหตุการณ์ ให้ดูที่ ศูนย์สคริปต์ของ Microsoft สำหรับตัวอย่าง