我有txt文件( test.txt )包含以下数据:
00:06:55.351;C39EE9AF;2015-01-05 09:52:20;0;5;295;test;
00:06:51.368;C39EE78B;2015-01-05 09:52:17;0;5;295;test2;
我需要使用awk查看以下日期,如下所示:
2015-01-05 test
2015-01-05 test2
我尝试了以下内容:
cat test.txt | awk -v FS=";" '{print $3,$7}'
答案 0 :(得分:1)
将字段分隔为分号或空格:
awk -F'[; ]' '{ print $3, $NF }' test.txt
我使用了-F
开关,这是设置输入字段分隔符FS
的标准方法。我还使用$NF
打印了最后一个字段。另请注意,我将文件直接传递给awk,这避免了无用的cat。
如果其他字段中可能有空格,那么您可以使用split
代替:
awk -F; '{ split($3,a," "); print a[1], $NF }' file
这会拆分空间上的第三个字段并使用第一个部分。