作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个大文件,其中包含如下示例
A222, 00000, 555
A222, 00100, 555
A222, 00200, 555
A222, 00300, 555
A222, 00000, 555
A222, 00100, 555
A222, 00000, 555
A222, 00200, 555
这是一个包含订单标题(00000)和相关订单详细信息(00100、00200 等)的示例文件。我想将每个文件拆分为大约 40000 行,以便每个文件都包含订单标题和订单详细信息。
我使用GNU parallel
实现了40000行的拆分,但是我无法实现拆分以满足确保Order Header及其相关订单明细都在一起的条件在一行中确保每个文件都有大约 40000 行
对于上面的示例文件,如果我必须每行拆分大约 5 行,我会使用下面的
parallel --pipe -N5 'cat > sample_{#}.txt' <sample.txt
但那会给我
sample1.txt
A222, 00000, 555
A222, 00100, 555
A222, 00200, 555
A222, 00300, 555
A222, 00000, 555
sample2.txt
A222, 00100, 555
A222, 00000, 555
A222, 00200, 555
它将在第一个文件中包含 2nd Order header ,在第二个文件中包含其相关的订单详细信息。
想要的应该是
sample1.txt
A222, 00000, 555
A222, 00100, 555
A222, 00200, 555
A222, 00300, 555
sample2.txt
A222, 00000, 555
A222, 00100, 555
A222, 00000, 555
A222, 00200, 555
最佳答案
你可以试试这个代码:
( export hdr=$(head -1 sample.txt); parallel --pipe -N4 '{ echo "$hdr"; cat; } > sample_{#}.txt' < <(tail -n +2 sample.txt) )
我们基本上将标题行分开并在剩余行上运行拆分,同时在每个拆分文件中包含标题。
关于linux - 根据条件和大约行数将文件拆分为多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66741098/
我是一名优秀的程序员,十分优秀!