Windows Tips & News

วิธีล้าง Windows Event Log จากบรรทัดคำสั่ง

บ่อยครั้งเมื่อคุณต้องการแก้ไขปัญหาหรือตรวจสอบความสมบูรณ์ของระบบโดยทั่วไป คุณต้องใช้ Event Viewer Event Viewer จะแสดงเหตุการณ์ของ Windows ทั้งหมดที่ได้รับการบันทึก เช่น ข้อมูล ข้อผิดพลาด คำเตือน วิกฤติ และรายละเอียด แต่มีเหตุการณ์มากมายที่นี่ รวมถึงกิจกรรมปกติทั้งหมดที่ได้รับการบันทึก ทำให้ยากต่อการระบุเหตุการณ์ที่เกี่ยวข้องกับสิ่งที่ไม่ทำงานตามที่คาดไว้หรือทำให้เกิดข้อผิดพลาด ดังนั้นในบางครั้ง คุณอาจต้องล้างบันทึกเหตุการณ์ ในบทความนี้ เราจะมาดูวิธีการล้างบันทึกเหตุการณ์โดยอัตโนมัติหรือจากบรรทัดคำสั่ง

บันทึกระบบและบันทึกแอปพลิเคชันเป็นบันทึกสำคัญสองบันทึกที่คุณอาจต้องการล้างเป็นครั้งคราว คุณสามารถล้างบันทึกเหตุการณ์ใดๆ ได้ด้วยตนเองโดยคลิกขวาและเลือก "ล้างบันทึก..." จากเมนูคลิกขวา อย่างไรก็ตาม คุณอาจต้องการทำให้สิ่งนี้เป็นแบบอัตโนมัติ ดังนั้นทุกๆ 7 วันหรือ 15 วัน บันทึกเหตุการณ์จะถูกล้าง นอกจากนี้คุณยังสามารถ ตั้งค่างานที่กำหนดเวลาไว้ซึ่งทำงานโดยอัตโนมัติโดยใช้ ElevatedShortcut เพื่อล้างบันทึกเหตุการณ์

วิธีล้างเฉพาะบันทึกเหตุการณ์เฉพาะโดยใช้พรอมต์คำสั่ง

  1. เปิดพรอมต์คำสั่งในฐานะผู้ดูแลระบบ (ดูวิธีการ).
  2. ในการล้างบันทึกเฉพาะ คุณต้องรู้ชื่อก่อน หากต้องการดูรายการบันทึกเหตุการณ์ ให้พิมพ์:
    wevtutil el
  3. สิ่งนี้สร้างรายการบันทึกที่ยาวมาก คุณสามารถใช้คำสั่ง: 'wevtutil el | มากขึ้น' (โดยไม่ใส่เครื่องหมายคำพูด) เพื่อแสดงเอาต์พุตทีละหน้าจอ หรือคุณสามารถส่งออกไปยังไฟล์ข้อความโดยใช้คำสั่ง:
    เกี่ยวกับเรา > Loglist.txt

    สิ่งนี้จะสร้างไฟล์ข้อความ Loglist.txt ในไดเร็กทอรีการทำงานของพรอมต์คำสั่ง (โฟลเดอร์เดียวกับที่คุณอยู่ที่พรอมต์คำสั่ง)

  4. เมื่อคุณทราบชื่อบันทึกที่คุณต้องการล้างแล้ว คุณสามารถใช้คำสั่งต่อไปนี้:
    wevtutil cl แอปพลิเคชัน
  5. คำสั่งข้างต้นล้างบันทึกแอปพลิเคชัน หากต้องการล้างบันทึกของระบบ ให้ใช้: 'wevtutil cl System' (โดยไม่ใส่เครื่องหมายคำพูด)

วิธีล้างบันทึกเหตุการณ์ทั้งหมดโดยใช้พรอมต์คำสั่ง

  1. เปิด 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 คุณต้องเรียกใช้สคริปต์นี้ในฐานะผู้ดูแลระบบ! เสียงสะท้อน :ตอนจบ
  2. บันทึกเป็นแบตช์ไฟล์และตั้งชื่อตามที่คุณต้องการ เช่น ClEvtLog.bat หรือ ClEvtLog.cmd
    เคล็ดลับ: หากต้องการบันทึกข้อความที่มีนามสกุล .bat หรือ .cmd โดยตรง ให้พิมพ์ชื่อไฟล์ในเครื่องหมายคำพูด นั่นคือ "ClEvtLog.bat" หรือ "ClEvtLog.cmd"
  3. คัดลอกไฟล์แบตช์นี้ไปยังไดเร็กทอรีบางตัวในพาธระบบของคุณ เช่น C:\Windows ดังนั้นคุณจึงไม่ต้องพิมพ์พาธแบบเต็มทุกครั้งที่เรียกใช้
  4. เปิดพรอมต์คำสั่งที่ยกระดับ (ดูวิธีการ).
  5. เรียกใช้แบตช์ไฟล์จากพรอมต์คำสั่ง: ClEvtLog.cmd คุณยังสามารถเรียกใช้โดยตรงโดยไม่ต้องเปิดพรอมต์คำสั่งหรือใช้ cmd /c เพื่อให้พรอมต์คำสั่งปิดหลังจากเรียกใช้

วิธีล้างบันทึกเหตุการณ์ทั้งหมดโดยใช้ PowerShell

  1. เปิด PowerShell ในฐานะผู้ดูแลระบบ (ดูวิธีการ)
  2. พิมพ์หรือคัดลอกและวางคำสั่งต่อไปนี้ลงใน PowerShell:
    wevtutil el | Foreach-Object {wevtutil cl "$_"}
  3. กดปุ่มตกลง. รอสองสามวินาทีเพื่อล้างบันทึกทั้งหมด คุณสามารถออกจาก PowerShell ได้โดยพิมพ์ Exit

วิธีล้างบันทึกเหตุการณ์ทั้งหมดโดยใช้ VBScript/WMI (เฉพาะบันทึกเหตุการณ์แบบคลาสสิกเท่านั้น)

  1. เปิด Notepad และคัดลอกและวางข้อความต่อไปนี้ลงไป:
    strComputer = "." ตั้งค่า objWMIService = GetObject("winmgmts:" _. & "{impersonationLevel=impersonate, (สำรอง, ความปลอดภัย)}!\\" _. & strComputer & "\root\cimv2") ตั้งค่า colLogFiles = objWMIService แบบสอบถาม _. ("เลือก * จาก Win32_NTEventLogFile") สำหรับแต่ละ objLogfile ใน colLogFiles ไฟล์ objLog ClearEventLog() ต่อไป
  2. บันทึกเป็นไฟล์ VBScript (.VBS) และตั้งชื่อตามต้องการ เช่น ClEvtLog.vbs
    เคล็ดลับ: เมื่อต้องการบันทึกข้อความที่มีนามสกุล .vbs โดยตรง ให้พิมพ์ชื่อไฟล์ในเครื่องหมายคำพูด นั่นคือ "ClEvtLog.vbs"
  3. คัดลอกไฟล์ VBScript นี้ไปยังไดเร็กทอรีบางตัวในพาธระบบของคุณ เช่น C:\Windows ดังนั้นคุณจึงไม่ต้องพิมพ์พาธแบบเต็มทุกครั้งที่เรียกใช้
  4. เปิดพรอมต์คำสั่งที่ยกระดับ (ดูวิธีการ).
  5. เรียกใช้ไฟล์ VBScript จากพรอมต์คำสั่ง: CScript ClEvtLog.vbs คุณยังสามารถเรียกใช้โดยตรงโดยไม่ต้องเปิดพรอมต์คำสั่งหรือใช้ cmd /c เพื่อให้พรอมต์คำสั่งปิดหลังจากเรียกใช้
    วิธี VBScript/WMI จะล้างเฉพาะบันทึกเหตุการณ์แบบคลาสสิกเท่านั้น (แอปพลิเคชัน ความปลอดภัย ระบบ ฯลฯ ไม่ใช่ประเภท XML ใหม่ของบันทึกเหตุการณ์ที่ PowerShell หรือ wevtutil.exe ล้าง)

โปรดทราบด้วยว่าสคริปต์เหล่านี้จะไม่สำรองข้อมูลบันทึกก่อนที่จะถูกล้าง หากคุณต้องการสำรองบันทึกเหตุการณ์ ให้ดูที่ ศูนย์สคริปต์ของ Microsoft สำหรับตัวอย่าง

Microsoft ได้ประกาศ Windows 10 เวอร์ชัน 22H2 อย่างเป็นทางการแล้ว

Microsoft ได้ประกาศ Windows 10 เวอร์ชัน 22H2 อย่างเป็นทางการแล้ว

Microsoft เพิ่งเปิดตัว Windows 10 เวอร์ชัน 22H2 สำหรับทุกคน คล้ายกับ Windows 11 22H2 ที่เพิ่งเปิด...

อ่านเพิ่มเติม

มีอะไรใหม่ใน Windows 10 เวอร์ชัน 22H2

มีอะไรใหม่ใน Windows 10 เวอร์ชัน 22H2

ต่อไปนี้คือสิ่งใหม่ๆ ใน Windows 10 เวอร์ชัน 22H2 ซึ่งเป็นฟีเจอร์ที่อัปเดตเป็น Windows 10 เวอร์ชัน...

อ่านเพิ่มเติม

Microsoft ได้ยืนยันข้อผิดพลาดกับ UDP ใน RDP บน Windows 11 22H2

Microsoft ได้ยืนยันข้อผิดพลาดกับ UDP ใน RDP บน Windows 11 22H2

ที่แนะนำ: คลิกที่นี่เพื่อแก้ไขปัญหา Windows และเพิ่มประสิทธิภาพของระบบอย่างที่คุณจำได้ ผู้ใช้หลาย...

อ่านเพิ่มเติม