一尘不染

连接文件并在文件之间插入新行

linux

我有多个要合并的文件cat。比方说

File1.txt 
foo

File2.txt
bar

File3.txt
qux

我想要合并,使最终文件看起来像:

foo

bar

qux

代替平常 cat File*.txt > finalfile.txt

foo
bar 
qux

什么是正确的方法?


阅读 233

收藏
2020-06-02

共1个答案

一尘不染

你可以做:

for f in *.txt; do (cat "${f}"; echo) >> finalfile.txt; done

finalfile.txt在运行上述命令之前,请确保该文件不存在。

如果被允许使用,awk您可以这样做:

awk 'FNR==1{print ""}1' *.txt > finalfile.txt
2020-06-02