Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何在MAC OS上使用终端将多个CSV文件合并为一个?_Macos_Csv_Terminal - Fatal编程技术网

Macos 如何在MAC OS上使用终端将多个CSV文件合并为一个?

Macos 如何在MAC OS上使用终端将多个CSV文件合并为一个?,macos,csv,terminal,Macos,Csv,Terminal,我有20个csv文件的目录。它们都有相同的标题。我想将这些csv文件合并到一个文件中。在windows上工作时,我只需打开cmd,转到正确的目录并使用以下命令: copy *.csv combined-files.csv 它在Windows上完成这项工作。我无法在mac的终端上运行此命令,因为mac上不存在此命令。如何重写此Windows命令,使其在Mac OS上执行相同的操作?要将所有文件连接到一个文件中,可以使用以下awk命令合并内容。 但这将忽略标题内容 awk 'FNR > 1

我有20个csv文件的目录。它们都有相同的标题。我想将这些csv文件合并到一个文件中。在windows上工作时,我只需打开cmd,转到正确的目录并使用以下命令:

 copy *.csv combined-files.csv

它在Windows上完成这项工作。我无法在mac的终端上运行此命令,因为mac上不存在此命令。如何重写此Windows命令,使其在Mac OS上执行相同的操作?

要将所有文件连接到一个文件中,可以使用以下awk命令合并内容。 但这将忽略标题内容

awk 'FNR > 1' *.csv > consolidated.csv
awk命令假定所有文件都在一个目录中。 如果您的所有文件都位于不同的目录中,您可以使用下面的命令将其合并到一个目录中

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

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

cat *.csv > combined-files.csv

请注意,如果标题包含在所有.csv文件中,则标题将在整个
组合文件.csv
中重复。就像你为Windows发布的解决方案一样。

?我喜欢你的思考方式!