如何将数千个.csv文件合并到一个主文件中?
我有一个超过10000个如何将数千个.csv文件合并到一个主文件中?,csv,Csv,我有一个超过10000个.csv文件的文件夹,我想将这些文件合并成一个主文件。它们都以相同的方式进行分类(A、B、C、D、E、F列在每个文件中都是相同的内容)。我更喜欢用shell脚本 我试过了 cat *.csv > Everything.csv 它返回的参数太长 我也试过了 copy *.csv > Everything.csv 它返回相同的错误 如何将大约10000个文件合并到一个主文件中 我使用了以下方法: cat *.csv >> /tmp/master_
.csv
文件的文件夹,我想将这些文件合并成一个主文件。它们都以相同的方式进行分类(A、B、C、D、E、F列在每个文件中都是相同的内容)。我更喜欢用shell脚本
我试过了
cat *.csv > Everything.csv
它返回的参数太长
我也试过了
copy *.csv > Everything.csv
它返回相同的错误
如何将大约10000个文件合并到一个主文件中 我使用了以下方法:
cat *.csv >> /tmp/master_file_name.csv
单个'>'将重新写入文件,而不是附加文件,此问题讨论您看到的错误: 一种可能的解决方案是:
find . -name "*.csv" -exec cat '{}' >> ./Everything.csv ';'
您可以使用一个简单的for循环:
for file in `ls`; do
cat $file >> master_file
done
find-名称“*.csv”| xargs-I{}cat'{}>Everything.csv
(编辑)啊,好吧,打到底…返回错误-bash:/bin/cat:参数列表太长了我使用了一台功能更强大的计算机。它返回错误“输入文件是输出文件”。尝试调用输出文件“Everything.output”,然后重命名为.csv?返回错误“cat:./Everything.csv:input file is output file”True,完成后,所有内容都在Everything.csv中(即,您仍然得到正确答案)。这是一个警告,真的。如果您的输出文件不是以.csv结尾,或者它位于当前目录之上的其他目录中,则不会收到该警告。