Eng*_*ng7 3 awk text-processing
考虑下面的文件,我如何比较两个时间戳,注意时间部分可以忽略不计。
foo,boo,2038-01-18T12:00:00+02:00
foo,boo,2015-09-12T01:31:24+03:00
foo,boo,2015-08-04T03:15:38+03:00
Run Code Online (Sandbox Code Playgroud)
我尝试substring
使用以下代码按日期制作它并将其与其他日期进行比较,即: 2015-08-12
awk -F, '{$3=substr($3,1,10)}{if($3<2015-08-12){print $0}}'
Run Code Online (Sandbox Code Playgroud)
但它没有用。
期望的输出:
foo,boo,2015-08-04T03:15:38+03:00
Run Code Online (Sandbox Code Playgroud)
或者:
foo,boo,2015-08-04
Run Code Online (Sandbox Code Playgroud)
您需要双引号日期,以强制字符串比较:
$ awk -F, '$3 < "2015-08-12"' <file
foo,boo,2015-08-04T03:15:38+03:00
Run Code Online (Sandbox Code Playgroud)