我们在上一篇文章中介绍了cat命令的使用,了解到这个命令是用来获取文件的内容并输出到屏幕或者其他设备上的。其实cat命令的初衷就是为了拼接文件,所以我们可以用它来合并文件。使用cat命令合并文件的方法很简单,只需要在命令后面加上要合并的文件名(包括路径)即可,如下图:cat...我们给一个例如,如果我们有两个文件名为file1.txt和file2.txt,我们首先使用cat命令查看内容,然后合并两个文件,如下图所示:但是上面的例子只是合并了两个文件内容合并输出到终端,合并后的内容不保存在任何地方,file1.txt和file2.txt这两个文件没有变化。如果我们想把合并后的内容保存在某个地方,我们需要将其重定向到另一个文件,如下:已存在的文件,如果不存在则创建该文件。另外一个,上面命令中的重定向符号>会覆盖文件的内容,所以建议不要使用已经存在的文件,以免被覆盖。使用cat命令将合并的内容追加到现有文件中。每次合并都需要重新创建一个文件,对于某些需求来说不是很方便。那么,有没有办法将合并的内容附加到某个现有文件中?答案是肯定的。方法是将重定向符号>改为>>,如下:catfile1.txtfile2.txt>>file3.txt上面的file1.txt、file2.txt和file3.txt是前面例子中用到的文件,在为了区分,我们在file1.txt和file2.txt中添加一些字符,然后执行上面的命令,我们再看一下file3.txt,如下图:可以看到file3.txt中的内容是在之前的基础上增加了一些内容。使用循环合并多个文件如果要合并的文件太多,比如100个,是否需要在cat命令后面加上100个文件名?这绝对是不现实的。我们有一种开箱即用的方法,可以使用for循环合并文件。比如我们有file1.txt,file2.txt。..file5.txt5个文件需要合并,可以使用如下命令:foriin{1..5};做cat"file$i.txt">>newfile.txt;done上面的命令会将5个文件的内容合并到新文件newfile.txt中。其他合并文件的方法除了使用cat,还可以使用sed命令来合并文件。sed是一种非交互式的文件编辑方式,可以将文件的修改保存一定的时间。使用h选项,更改可以暂时放在缓冲区中。请参见以下示例:sedhfile1.txtfile2.txt>file3.txt