Bash 如何在unix中合并和删除文件?

Bash 如何在unix中合并和删除文件?,bash,unix,cat,Bash,Unix,Cat,我想在bash中将多个文件合并成单个文件。所以我使用代码 cat文件1文件2文件3文件4>>输出 但由于我的计算机内存不足,我无法创建合并文件。相反,您知道如何在数据添加到输出文件后同时删除file1 file2 file3吗 for i in file1 file2 file3 file4 ; do cat "$i" >> output && rm "$i" || break ; done 因此,对于每个文件,它会将内容附加到输出,并在附加后删除源文件。如果出现任

我想在bash中将多个文件合并成单个文件。所以我使用代码

cat文件1文件2文件3文件4>>输出

但由于我的计算机内存不足,我无法创建合并文件。相反,您知道如何在数据添加到输出文件后同时删除file1 file2 file3吗

for i in file1 file2 file3 file4 ; do cat "$i" >> output && rm "$i" || break ; done

因此,对于每个文件,它会将内容附加到
输出
,并在附加后删除源文件。如果出现任何问题,它就会停止。

我能想到的最好办法是:

mv file1 output
cat file2 >> output && rm file2 &&
cat file3 >> output && rm file3 
这里的
rm
s几乎是最早的有用机会

当然,您可以在
for
循环中执行此操作

mv file1 output
for f in file*; do
   cat $f >> output && rm $f
done