【发布时间】:2016-10-05 10:22:39
【问题描述】:
我正在尝试从以下解析日期时间部分 -
[Tue Oct 4 11:55:19 2016] [hphp] [25376:7f5d57bff700:279809:000001] [] \nFatal error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting ')' in /var/cake_1.2.0.6311-beta/app/webroot/openx/www/delivery/postGetAd.php(12479)(62110d90541a84df30dd077ee953e47c) : eval()'d code on line 1
使用以下命令 -
/usr/local/nagios/libexec/check_logwarn -d /tmp/logwarn -p /mnt/log/hiphop/error_`(date +'%Y%m%d')`.log "^.*Fatal*" | awk '{print $1" "$2" "$3" "$4" "$5}'
我得到以下输出(带括号[]) -
[Wed Oct 5 09:49:49 2016]
我只想获取日期时间部分,然后进行一些比较。看我的另一个问题Parsing lines from a log file containing date-time greater than something
我尝试使用 gsub 替换括号,但它给了我以下错误 -
/usr/local/nagios/libexec/check_logwarn -d /tmp/logwarn -p /mnt/log/hiphop/error_`(date +'%Y%m%d')`.log "^.*Fatal*" | awk '{ gsub("/\[\","T",$1); print $1" "$2" "$3" "$4" "$5}'
输出 -
awk: (FILENAME=- FNR=1) fatal: Invalid regular expression: /[/
看来我需要逃离[。我尝试使用\[,但没有成功。输出 -
awk: warning: escape sequence `\[' treated as plain `['
awk: (FILENAME=- FNR=1) fatal: Invalid regular expression: /[/
【问题讨论】: