如何使用 awk linux 转换日期
how to convert date using awk linux
我有 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 ,}'
设置字段分隔为分号或一个space:
awk -F'[; ]' '{ print , $NF }' test.txt
我使用了 -F
开关,这是设置输入字段分隔符 FS
的标准方法。我还使用 $NF
来打印最后一个字段。另请注意,我将文件直接传递给 awk,这避免了对 cat 的无用使用。
如果其他字段中可能有 space,那么您可以使用 split
代替,如下所示:
awk -F; '{ split(,a," "); print a[1], $NF }' file
这将在 space 上拆分第三个字段并使用第一部分。
我有 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 ,}'
设置字段分隔为分号或一个space:
awk -F'[; ]' '{ print , $NF }' test.txt
我使用了 -F
开关,这是设置输入字段分隔符 FS
的标准方法。我还使用 $NF
来打印最后一个字段。另请注意,我将文件直接传递给 awk,这避免了对 cat 的无用使用。
如果其他字段中可能有 space,那么您可以使用 split
代替,如下所示:
awk -F; '{ split(,a," "); print a[1], $NF }' file
这将在 space 上拆分第三个字段并使用第一部分。