【发布时间】:2021-06-25 06:01:27
【问题描述】:
我想将.txt 分成两部分,其中一个文件包含所有行,其中第一列的第一个字符为“A”且第一列中的字符总数为 6,而另一个文件包含所有其余部分.搜索让我找到了awk 命令以及根据第一个字符分隔文件的方法,但我找不到任何根据列长度分隔文件的方法。
我不熟悉awk,所以我尝试(无济于事)是awk -F '|' '$1 == "A*****" {print > ("BeginsWithA.txt"); next} {print > ("Rest.txt")}' FileToSplit.txt。
非常感谢任何帮助或指向正确方向的指针。
编辑:正如 RavinderSingh13 提醒的那样,我最好放一些输入和预期输出的样本/示例。
所以,这是一个输入示例:
#FileToSplit.txt#
2134|Line 1|Stuff 1
31516784|Line 2|Stuff 2
A35646|Line 3|Stuff 3
641|Line 4|Stuff 4
A48029|Line 5|Stuff 5
A32100|Line 6|Stuff 6
413|Line 7|Stuff 7
预期的输出是什么:
#BeginsWith6.txt#
A35646|Line 3|Stuff 3
A48029|Line 5|Stuff 5
A32100|Line 6|Stuff 6
#Rest.txt#
2134|Line 1|Stuff 1
31516784|Line 2|Stuff 2
641|Line 4|Stuff 4
413|Line 7|Stuff 7
【问题讨论】:
-
您能否在您的问题中发布输入和预期输出示例,干杯。
-
您的文件管道是否有分隔符?