PowerShellでイベントログから直近のログオン・ログオフ時刻を取得する。

powershell コンピュータ
powershell

Get-EventLogコマンドレットを使うとイベントログからログ情報を取得することが出来ます。

今回はWindowsへのログオン時刻とログオフ時刻を取得してみます。

ログオン

InstanceIdを7001でログオン通知を絞り込み。直近1件はNewest 1で条件指定。
コマンド

Get-EventLog -LogName System -InstanceId 7001 -Newest 1 | Select-Object TimeWritten, EventID, Message

結果

TimeWritten        EventID Message
-----------        ------- -------
2024/12/26 9:10:13    7001 カスタマー エクスペリエンス向上プログラムのユーザー ログオン通知

ログオフ

InstanceIdを7002でログオフ通知を絞り込み。直近1件はNewest 1で条件指定。
コマンド

Get-EventLog -LogName System -InstanceId 7002 -Newest 1 | Select-Object TimeWritten, EventID, Message

結果

TimeWritten        EventID Message
-----------        ------- -------
2024/12/26 9:09:10    7002 カスタマー エクスペリエンス向上プログラムのユーザー ログオフ通知

追記

同様にInstanceIdに6005でPCの起動、6006で正常シャットダウンを取得出来るらしいのですが、Windows10の高速スタートアップを使用しているためか、テストしているPCでは確認できませんでした。

コメント