gpt4 book ai didi

linux - 如何根据 2 个或更多列值拆分文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:09:56 25 4
gpt4 key购买 nike

我正在尝试根据两列值拆分文件。

能够基于一列拆分文件

awk -F\| '{print>$1}' file1

数据需要根据第2列和第5列进行拆分(如果第2列= 3并且第5列=M)

A1|3|100|20|M 
A1|5|101|20|N
A1|5|101|30|M
A1|3|105|20|O
B1|3|150|5|M
A1|3|106|20|Q
A1|5|101|20|N
A1|5|101|30|Q
A1|5108|20|O
B1|3|150|5|M


Output : File 1

A1|5|101|20|N
A1|5|101|30|M
A1|3|105|20|O
A1|3|106|20|Q
A1|5|101|20|N
A1|5|101|30|Q
A1|5108|20|O

Output: File 2

A1|3|100|20|M
B1|3|150|5|M
B1|3|150|5|M

最佳答案

cat file1 
A1|3|100|20|M
A1|5|101|20|N
A1|5|101|30|M
A1|3|105|20|O
B1|3|150|5|M
A1|3|106|20|Q
A1|5|101|20|N
A1|5|101|30|Q
A1|5108|20|O
B1|3|150|5|M

试试这个:

awk -F\| '{print>$2$5}' file1

这给了我:

ls -l
total 120
-rw-rw-r-- 1 tink tink 26 Jun 21 12:22 3M
-rw-rw-r-- 1 tink tink 15 Jun 21 12:22 3M
-rw-rw-r-- 1 tink tink 14 Jun 21 12:22 3O
-rw-rw-r-- 1 tink tink 14 Jun 21 12:22 3Q
-rw-rw-r-- 1 tink tink 13 Jun 21 12:22 5108
-rw-rw-r-- 1 tink tink 15 Jun 21 12:22 5M
-rw-rw-r-- 1 tink tink 14 Jun 21 12:22 5N
-rw-rw-r-- 1 tink tink 15 Jun 21 12:22 5N
-rw-rw-r-- 1 tink tink 14 Jun 21 12:22 5Q
-rw-rw-r-- 1 tink tink 140 Jun 21 12:16 file1

关于linux - 如何根据 2 个或更多列值拆分文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56695159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com