将字符串转换为整数awk?

时间:2014-08-25 08:34:19

标签: parsing awk gawk

我正在使用awk解析输出文件,在某些时候,日期以这种方式显示

08/20/2014--05:08:48 PM--357624188
...
08/20/2014--05:10:04 PM--487503599
...

我想知道是否可以将字符串日期/时间转换为整数,因为我想根据该时间计算MTBF。

愿任何人告诉我如何在awk / gawk中实现这种演员吗?

提前致谢,

祝你好运!

编辑:我的输出应该是357624188整数,以便我可以提取487503599 - 357624188

解决:正如@Kent建议的那样,我可以使用

来解决它
awk 'BEGIN {previousT=0}{print $NF " " previousT " " $NF - previousT; previousT=$NF;}'

1 个答案:

答案 0 :(得分:2)

你可以这样做,(忽略数据验证)

awk -F'--' '{printf "%d-%d=%d\n",$NF,p,$NF-p;p=$NF}' file

测试

$ echo "08/20/2014--05:08:48 PM--111      
dquote> 08/20/2014--05:08:48 PM--211      
dquote> 08/20/2014--05:08:48 PM--311"|awk -F'--' '{printf "%d-%d=%d\n",$NF,p,$NF-p;p=$NF}'
111-0=111
211-111=100
311-211=100