我想根据另一个文件中的元素拆分一个大文件。以下是第一个文件的示例数据:
Col1,Col2,Col3
A,10,50
B,10,05
C,20,30
B,20,03
A,30,100
C,30,111
D,40,120
第二个文件是:
A
B
C
我想将 file1 的子集与第一列的值“A”保存到 A.txt;以及“B”到 B.txt,依此类推。
在我使用之前
awk '$1=="A"' file1.txt > A.txt
但现在我必须处理第二个文件中 100 多个不同的名称,寻找更好的方法来完成工作。谢谢!!!
答案1
您的案例的基本要素已在本网站上讨论过多次,例如
把它们放在一起,
awk -F, 'NR==FNR {a[$1]++; next} $1 in a {print > $1 ".txt"}' file2.txt file1.txt