如何合并在其他文件夹中的所有文件合并成一个文件,并添加新行
问题描述:
我有很多文件夹和文件,这是结构我如何合并在其他文件夹中的所有文件合并成一个文件,并添加新行
26-09-2016/CHANGELOG_20160926.TXT
26-09-2016/FILE_CHANGELOG_20160926.TXT
27-09-2016/CHANGELOG_20160927.TXT
27-09-2016/FILE_CHANGELOG_20160927.TXT
我需要这样的输出。 名称为CHANGELOG_*.TXT
的所有文件将合并,并将单独的新行添加到一个文件中,如CHANGELOG_20160926-20160930.TXT
,并且名称为FILE_CHANGELOG_*.TXT
的所有文件都将合并,并将单独的新行添加到一个文件中,如FILE_CHANGELOG_20160926-20160930.TXT
。 我该怎么做?
感谢
答
cat filename1 filename2 > filename3.txt
答
我猜你正在寻找类似的规定:
for prefix in CHANGELOG FILE_CHANGELOG; do
(for file in */"$prefix"_*.TXT; do
echo "${file##*/}"
cat "$file"
done
) > "$prefix.TXT"
done
我有很多文件,我不能做这样的。浪费时间 –