我有一个csv文件,如下所示:
Docushare Host
locale, created_at, version
en,Wed Feb 21 17:25:36 UTC 2018,07.00.00.C1.609
User
handle, client_data, docCountQuota
User-12,,-2
Document
handle,client_data,cfSpecialWords
Document-13,x,y
Document-14,z,a
Document-11,ab,cd
Collection
handle,client_data,routing_template
Collection-1,asdsad,asdad
Collection-2,xyz, abc
Collection-3,xada, adsad是否有更快的方法来拆分此CSV并为以下内容生成两个单独的文件:
Document-13,x,y
Document-14, z, a
Document-15, ab, cd和
Collection-1,asdsad,asdad
Collection-2,xyz, abc
Collection-3,xada, adsad这两个文件将用于nodejs应用程序,nodejs应用程序将再次对其进行解析,以创建具有必填字段的最终CSV。
谢谢你们。
发布于 2018-02-23 17:09:41
下面的简单awk可能会对你有帮助:
awk -F, '/^Document-/ && NF>1{print > "Document.csv";next} /^Collection/ && NF>1{print > "Collection.csv"}' Input_file现在也添加了一个非单线性形式的解决方案:
awk -F, '
/^Document-/ && NF>1{
print > "Document.csv";
next
}
/^Collection/ && NF>1{
print > "Collection.csv"
}
' Input_file作为输出,它将创建两个名为Document.csv和Collection.csv的输出文件,其内容将与您所显示的内容相同。
https://stackoverflow.com/questions/48944396
复制相似问题