我有一个包含3个或更多字段的CSV文件,我想提取前两个字段并将它们保存到一个新文件中。请注意,这些字段可能被引号引起来,也可能没有引号,并且可能包含逗号或引号(重复)。我想要精确提取前两个字段(无论是否带引号),并忽略第三个字段和其他字段(如果有的话)。这应该通过命令行完成。目前我有以下命令:
但是如果字段中有逗号,这种方法就不起作用了。
一个字段可能是空的(不包含任何内容,甚至没有引号)。
(我也查看了使用awk忽略CSV文件字段中的逗号,但那里的答案对我来说不起作用) 更新:这个问题不同,因为它要求CSV格式与原始格式相同-无论是带引号还是不带引号的字段。我有一个解决方案,我想提交。
cat 1.csv | awk -F, '{print $1","$2}' > 2.csv
但是如果字段中有逗号,这种方法就不起作用了。
一个字段可能是空的(不包含任何内容,甚至没有引号)。
(我也查看了使用awk忽略CSV文件字段中的逗号,但那里的答案对我来说不起作用) 更新:这个问题不同,因为它要求CSV格式与原始格式相同-无论是带引号还是不带引号的字段。我有一个解决方案,我想提交。