Mac
cli

Mac のスリープ切替のログから今日の出退勤時刻を推定する

現在の勤め先には日報を書くという制度があるのですが、今日何時に出社したか忘れた場合や昨日何時に退勤したか忘れてしまった場合に思い出したり調べたりするのが大変なので、 Mac のスリープログを確認して推定しました。

会社に来たら Mac を開きますし、会社から帰る時は Mac を閉じるので、ある程度の精度で取れると思います。


コマンド

こんなコマンドでできそうです。


terminal

$ sudo pmset -g log | grep "Kernel Idle sleep preventers" | grep $(date +'%Y-%m-%d') | sed -n '1p;$p'


今日の日付で取るようになっているので、日付を自分で指定したい場合は 2 つめの grep の $(...) の箇所を "yyyy-mm-dd" で置換してください。


terminal

$ sudo pmset -g log | grep "Kernel Idle sleep preventers" | grep "2018-05-01" | sed -n '1p;$p'


コマンドを実行すると次のような出力が得られるはずです。


terminal

2018-05-21 11:00:22 +0900 Assertions            Kernel Idle sleep preventers: IODisplayWrangler

2018-05-21 19:57:06 +0900 Assertions Kernel Idle sleep preventers: -None-

一行目がその日の一番早い時間に記録された情報で、二行目がその日の一番遅い時間に記録された情報です。

日付をまたいで仕事をした場合などは正しく表示できませんが、だいたいはこれで確認できるはずです。

もっといい方法があれば教えてください :pray: