我正在编写一个脚本,为了实现卓越,必须将日期和时间格式从日志文件转换为时间戳。我想要这个以便稍后进行比较。
我的日志文件具有以下格式:
2012-11-06 10:32:45
<log message follows here on multiple lines in XML format>
我正在使用以下 gawk 表达式将我的日期/时间转换为时间戳:
$ gawk '/^([0-9]{2,4}-?){3} ([0-9]{2}\:?){3}/{print $0;gsub(/\:/," ");print mktime($0)}' logfile.txt
输出将是:
2012-11-01 15:27:28
1293719248
这实际上是我正在寻找的,但问题是正则表达式是否正确?由于我远离正则表达式大师,我也想知道这是否可以。当涉及到正则表达式时,这是否可以以一种更好的方式完成?日志文件中使用的格式永远不会改变,因为我没有费心进行通用日期/时间匹配。也许我表达中的其他东西是fubar?:-)