Windows のイベントログをすべてクリアする

Windows のイベントログすべてをクリアするバッチファイルのサンプルです。
下記のイベントログの内容すべてを削除します。

  • [Windows ログ] 配下のログ (Application、システム etc)
  • [アプリケーションとサービス ログ] 配下のログ

用途は限られるかもしれませんが、キッティングのマスターイメージを作成する場合などに使えると思います。

バッチファイルのサンプル

以下の内容を bat ファイルとして C:\temp などに保存し、管理者権限で実行します。

clear-evt.bat

wevtutil el > %cd%\EvtList.txt
for /f %%i in (EvtList.txt) do wevtutil cl "%%i"
wevtutil cl "System"
del %cd%\EvtList.txt

中身の解説

バッチファイルで実行している内容を、1行ずつ説明していきます。

wevtutil el > %cd%\EvtList.txt

「wevtutil el」で、すべてのイベントログの名前を列挙し、バッチファイルを保存したフォルダの EvtList.txt に出力します。
イベントログの名前とは、「Application」や「System」、「Security」などです。

for /f %%i in (EvtList.txt) do wevtutil cl "%%i"

EvtList.txt から1行ずつイベントログの名前を取り出し、逐次「wevtutil cl <取り出したイベントログ名>」を実行し、イベントログの中身をクリアします。

wevtutil cl "System"

「wevtutil cl」を実行すると、システムのイベントログに次にのようなイベントが載ります。

クリアしたログの数だけ上記のイベントが載るので、最後にシステムのイベントログをクリアしています。
※ ここで「wevtutil cl “System”」を実行したイベントだけは残ってしまいます。

del %cd%\EvtList.txt

最後に、EvtList.txt を削除しています。

以上で、イベントログのクリアは完了です。