我正在尝试分析一个巨大的文本文件(1.6GB),其数据行如下所示:
20090118025859 -2.400000 78.100000 1023.200000 0.000000
20090118025900 -2.500000 78.100000 1023.200000 0.000000
20090118025901 -2.400000 78.100000 1023.200000 0.000000
我什至不知道有多少行。但我正在尝试按日期拆分文件。左边的数字是时间戳(例如,这些行来自 2009 年 1 月 18 日)。 如何根据日期将该文件分割成多个部分?
每个日期的条目数不同,因此使用带有常量的 split
不起作用。
我所知道的一切都是 grep file '20090118*' > data20090118.dat
,但肯定有一种方法可以一次完成所有日期,对吗?
提前致谢, 亚历克斯
最佳答案
使用awk:
awk '{print > "data"substr($1,0,8)".dat"}' myfile
关于shell - UNIX shell 脚本 : Split a textfile by its entries,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5167379/