【发布时间】:2019-07-20 16:24:11
【问题描述】:
我有一个很大的 CSV 文件,需要将其拆分为多个 CSV 文件,使用第 3 列作为标识符,生成的文件将由第 3 列中的值命名
我正在使用以下内容:
awk -F ',' '{print > ($3".csv")}' playpass.csv
但是我得到了错误:
awk: cannot open "04477C9A875B80.csv" for output (Too many open files)
我知道我需要关闭文件,但经过几次尝试后,我无处可去,现在回到空白画布
我尝试了以下但没有运气,因为我得到了同样的错误
awk -F ',' '{close($1); i++}{print > $1}' query_result_2019-07-20T15_31_42.941Z.csv
有什么建议吗?
【问题讨论】:
-
您的字段分隔符应与 awk 程序的其余部分分开引用
-
更新为使用我引用的示例,得到相同的错误
-
您的问题对我来说有点含糊:您希望在同一个输出文件中的第 3 列中是否有多个具有相同值的行?第 3 列是否已排序?您还没有针对您的问题调整其他答案——
i在这里没用
标签: awk