我有一个csv文件,其中包含两种不同格式的日期值,希望它们采用任何单一格式

时间:2016-07-06 10:54:50

标签: java python shell

我的CSV文件看起来像这样

id       date
1602    11/23/2015 14:10
1602    11/23/2015 22:45
1602    18/10/2011 09:19:46 AM
1702    18/10/2011 09:07:33 AM
1863    18/10/2011 09:07:35 AM
1436    18/10/2011 09:07:36 AM

我正在寻找像

这样的输出

id日期     1602 11/23/2015 14:10     1602 11/23/2015 22:45     1602 10/18/2011 09:19:46 AM     1702 10/18/2011 09:07:33 AM     1863 10/18/2011 09:07:35 AM     1436 10/18/2011 09:07:36 AM

1 个答案:

答案 0 :(得分:0)

我不确定你为什么要这么做比这更困难。看来你所做的只是(1)摆脱CSV文件的第一行; (2)抛弃任何引号; (3)将空格/标签集映射到单个空格中; (4)将换行符映射到空格。

所以。 。 。以下怎么样? (我假设数据来自标准输入。)

sed 1d | tr -d / \“/ | tr -s”/ [\ 010 \ 012] / /“

'sed'删除第一行;第一个'tr'条带引号;第二个“tr”映射将空格,制表符和/或换行符映射到单个空格(\ 010和\ 012分别是ASCII TAB和ASCII NL的八进制代码)。