首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

如何找出星期六日的登录日志

2012-09-15 
怎么找出星期六日的登录日志?大家好:请问怎么找出8月份在星期六、日登录系统的日志。8月份的登录日志如下图,

怎么找出星期六日的登录日志?
大家好:
  请问怎么找出8月份在星期六、日登录系统的日志。
8月份的登录日志如下图,但我用如下命令却找不出星期六、日的登录日志:
who /var/log/wtmp | grep "2012-08" | awk -v str=`date -d "$3" "+%a"` '{if(str="六" || str="日") print $0}'
这样不行,出错。
日志少的话,可以人工对照,如果多的话,就麻烦了。
请问应怎么写呢?谢谢!



[解决办法]
你首先需要把周日或者周六转换成一个日期,因为你的日志记录是没有星期的。怎么过滤都是没有结果的。
[解决办法]
关键在这里:awk -v str=`date -d "$3" "+%a"`
你这个 $3 在 awk 的命令外面,属于 shell 命令,所以这时候 $3 没有值。你要把这个获取日期的值放在后面用,这里是一个例子,你可以和你自己的语句对比看看:

C# code
who /var/log/wtmp | grep "2012-08" | awk '{cmd="date -d "$3" +%a"; cmd | getline week; print $0, week}' 

热点排行