Concatenate multiple files but include filename as section headers

前端 未结 20 1705
粉色の甜心
粉色の甜心 2020-12-12 09:08

I would like to concatenate a number of text files into one large file in terminal. I know I can do this using the cat command. However, I would like the filename of each fi

20条回答
  •  醉酒成梦
    2020-12-12 09:25

    This should do the trick:

    for filename in file1.txt file2.txt file3.txt; do
        echo "$filename"
        cat "$filename"
    done > output.txt
    

    or to do this for all text files recursively:

    find . -type f -name '*.txt' -print | while read filename; do
        echo "$filename"
        cat "$filename"
    done > output.txt
    

提交回复
热议问题