gpt4 book ai didi

csv - 匹配模式并创建新文件

转载 作者:行者123 更新时间:2023-12-04 02:35:54 25 4
gpt4 key购买 nike

我有一个名为 file1.csv 的 csv 文件:

something;AD;sss;Andorra;nothing;type_1;ssssomething222;AD;sss222;Andorra;nothing222;type_2;aaathing;NL;thing3;Netherlands;thing;type_2;bbetc;US;etc;United States;etc;type_2;nothing

I want to create separate files for each country. I make greps like that:

grep -e "\;AD\;.*\;Andorra\;" file1.csv > fileAD.csv
grep -e "\;NL\;.*\;Netherlands\;" file1.csv > fileNL.csv
grep -e "\;US\;.*\;United\sStates\;" file1.csv > fileUS.csv

这行得通,但我有世界上所有的国家。我不想为每个国家写这些台词。还有其他解决方案吗?非常感谢任何帮助。

编辑:我更新了我的问题。我还有一个包含 type_1 和 type_2 的列。在创建了与每个​​国家对应的所有文件之后,我需要为每个国家创建新文件,只有 type_1 和新文件只有 type_2。

例如,对于安道尔,我需要以下文件:
文件AD.csv :

something;AD;sss;Andorra;nothing;type_1;ssssomething222;AD;sss222;Andorra;nothing222;type_2;aaa

文件ADtype_1.csv:

something;AD;sss;Andorra;nothing;type_1;sss

文件ADtype_2.csv:

something222;AD;sss222;Andorra;nothing222;type_2;aaa

我认为只查找带有缩写的列是可以的,但出于安全原因,我想要 2 列,一列带有“AD”,一列带有全名“Andorra”。

最佳答案

我选择只有一个 awk 实例的单行代码,没有临时文件:

awk -F ';' '{print >> "file" $2 ".csv"}' file1.csv

关于csv - 匹配模式并创建新文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61870767/

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