由于公司实行了弹性工作时间,每到下班时便会想想今天早上是几点几分刷指纹的,指纹机本来提供了查询的功能,不过它的log是按时间顺序排列的,不能倒序!!(后来仔细想想,在那种环境下倒序确实有些难度,但也不是无法解决,所以还是设计的人懒惰了,好好的功能变成摆设,仍然差评!)
因此查今天的上班时间要按很多很多次“下一页”。我是懒人,还是算了吧。(时间过了一年,已经需要按几百次了,勤快人也受不了啦)
有人说可以看看当天电脑的开机时间,基本能代表刷卡时间(误差可以忽略),此话有理。
随即各种查看系统日志的方法出炉:
- 调用Win的事件查看器
eventvwr /f:"<QueryList> <Query Id='0' Path='System'> <Select Path='System'>*[System[Provider[@Name='Microsoft-Windows-Kernel-General'] and TimeCreated[timediff(@SystemTime) <= 86400000]]]</Select> </Query> </QueryList>"
为了避免win版本的差异,去掉了EventID的过滤,Win8没测试过。缺点是慢,需要等界面慢慢显示,比较笨的一种方法。
- wevtutil命令
wevtutil qe SYSTEM /q:"*[System[TimeCreated[@SystemTime>='2015-01-23T00:00:00']]]" /c:1 /f:text
缺点是每次都需要改成当天的日期,因此弄了个批处理。
@echo off
set "Ymd=%date:~,10%"
wevtutil qe SYSTEM /q:"*[System[TimeCreated[@SystemTime>='%ymd%T00:00:00']]]" /c:1 /f:text
pause>nul
但这玩意在Win8中显示不出结果,貌似是对批处理有些变化,不等待执行结果了。
实际是因为Win8之后日期变量的格式发生了调整,和日志中的格式不一致了,修改如下:
@echo off
set "ymd=%date:~0,4%-%Date:~5,2%-%Date:~8,2%"
wevtutil qe SYSTEM /q:"*[System[TimeCreated[(@SystemTime>='%ymd%T00:00:00')]]]" /c:1 /f:text
pause>nul
- systeminfo命令
systeminfo | find "启动时间"
E文系统要换成"Boot Time",缺点是稍慢,并且重启过就完蛋
最后免不了的PS:对于从不关机的“环保人士”以上方法均无解,理论上可以通过日志解析搞定所有问题,但是不划算嘛,终究只是一个刷卡机设计失误引发的小问题。
嗯,用Mac的富人们,开机顺手截屏吧,反正你们也不需要“打开画图板->粘贴->保存”
网友评论