我有一个相当大的文件(1.5 亿行,每行 10 个字符)。我需要将它分成 150 个文件,每行 200 万行,每个输出行交替地是源代码行的前 5 个字符或最后 5 个字符。 我可以在 Perl 中相当快地完成此操作,但我想知道是否有使用 bash 的简单解决方案。 有什么想法吗?
最佳答案
家庭作业? :-)
我认为一个带有 sed(将每行分成两行)和 split(将内容分成多个文件)的简单管道就足够了。
man 命令是你的 friend 。
确认不是作业后添加:
怎么样
sed 's/\(.....\)\(.....\)/\1\n\2/' input_file | split -l 2000000 - out-prefix-
?
关于linux - 在 Linux/bash 下拆分文件及其行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63870/