我有一个大型csv文件,想要根据类别(CSV文件中的B列)将其拆分为较小的文件。
我的CSV文件如下所示:
Product Category
Printer Supplies
我目前正在使用awk -F, '{print > ($2".txt")}' input.csv
工作文件。这会根据每个类别生成许多文本文件。
我现在想要从每个生成的文件中删除类别字段(即删除之后的所有内容,“逗号”)。
现在生成的每个文本文件中的格式为Product,Category
。这应仅为Product
。
我尝试使用cut -d',' -f1 *.txt
,但这并没有将结果单独保存到每个文件中。
还有一种方法可以在一行中使用这两个命令吗?或者即使有一种方法使用awk根据类别$ 2进行拆分但只打印$ 1?这会节省一些时间。
感谢。
但我现在想进入每个删除类别
答案 0 :(得分:0)
如果您只希望您的文件包含每条记录的第一个字段,那么请完全按照您现在所做的操作,但只打印第一个字段:
awk -F, '{print $1 > ($2".txt")}'