-1

对 UNIX 有点新,但我有一个关于重新更改 csv 文件进入数据馈送的问题。

有几个| 日期返回的分隔列(例如)

|07-04-2006 15:50:33:44:55:66| 这需要更改为 |07-04-2006|

是否所有数据都写入另一个文件并不重要。这些文件中有数千行。

理想情况下,我正在寻找一种方法来进入第 3 和第 7 管道列并获取前 10 个字符并删除其他任何内容,直到下一个 |

在此先感谢您的帮助。

4

2 回答 2

0

这适用于所有列,但除非有不得更改的日期列,否则应该这样做:

sed 's/|\(..-..-....\) ..:..:..:..:..:..|/|\1|/g'

如果要更改文件,可以使用 sed 的-i选项。

于 2014-04-03T08:27:45.743 回答
0

你到底想要什么?

|07-04-2006 15:50:33:44:55:66|您可以使用|07-04-2006|File IO进行替换。

于 2012-07-09T10:56:40.280 回答