XX.XX.XX.XXX - - [22/Sep/2015:00:59:54 +0000] "POST /zabbix/jsrpc.php?output=json-rpc HTTP/1.1" 200 66 "http://XXX.XX.XX.XXX/zabbix/dashboard.php?sid=ca62d327b6afb561" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0"
这是我的apache访问日志。
我想解析这些日志,只想要提交日期(不是时间戳)。
那么如何才能得到22/Sep/2015
这个输出?
答案 0 :(得分:1)
使用grep -oP
(PCRE):
grep -oP '(?<=\[)\d+/[A-Z][a-z]+/\d+' access.log
22/Sep/2015
如果您的grep
不支持-P
,请使用sed
:
sed -r 's~.*\[([0-9]+/[A-Z][a-z]+/[0-9]+).*~\1~' access.log
22/Sep/2015
或者在OSX上:
sed -E 's~.*\[([0-9]+/[A-Z][a-z]+/[0-9]+).*~\1~' access.log
22/Sep/2015