如何在MAC OS终端上合并多个CSV文件?

9
我有一个包含20个CSV文件的目录,它们都有相同的标题。我想将这些CSV文件合并成一个文件。当我在Windows上工作时,我只需打开cmd,进入正确的目录并使用以下命令:
 copy *.csv combined-files.csv

这个命令可以在Windows上运行,但是在Mac终端无法运行,因为该命令在Mac系统中不存在。如何将该Windows命令重写,使其在Mac OS上执行同样的工作?


请参考以下内容:您可以使用git stash命令将当前更改保存在堆栈中,然后切换到其他分支。 在那个分支上完成更改后,您可以返回原始分支并使用git stash pop命令将更改应用于该分支。如果您需要在多个分支之间频繁切换,并且不想每次都提交更改,则此方法非常有用。 - Larme
2个回答

19

我能想到最简单的方法,与Windows版本类似:

cat *.csv > combined-files.csv
请注意,如果所有的 .csv 文件都包含标题,则这些标题将在 combined-files.csv 中重复出现。就像您为 Windows 发布的解决方案一样。

1
我喜欢你的思维方式! - Ugur Kazdal

7
为将所有文件合并为一个文件,您可以使用以下awk命令来整合内容。但是这将忽略头部内容。
awk 'FNR > 1' *.csv > consolidated.csv

awk 命令假定所有文件都在一个目录中。 如果你的文件都在不同的目录中,你可以使用下面的命令将它们合并到一个目录中。

find . -name \*.csv -exec cp {} newdir/ \;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接