我希望将多个文本文件与分隔符及其文件名相结合,然后删除所有新行并将所有内容放在一行上。
到目前为止,我可以使用两个不同的脚本执行此操作:
find -type f -name '*.txt' -print | while read filename; do echo "±±±±± $filename"; cat "$filename"; done > files.txt;
和
tr '\n' ' ' < files.txt > desiredoutput.txt
我尝试将这两者合并无济于事。有什么建议吗?
答案 0 :(得分:0)
合并它们的最简单方法是在每个tr
上$filename
代替cat
:
find -type f -name '*.txt' -print | while read filename do echo -n "±±±±± $filename " # The -n suppresses the \n at the end of the line. tr '\n' ' ' < "$filename" echo -n ' ' # Add a terminating delimiter done > desiredoutput.txt;