如何在合并多个lab_X.txt到final.txt时插入分隔信息?
在合并lab_X.txt文件时插入分隔线的方法
当然可行!这是个很实用的需求,给你几个简单易上手的解决方案:
方法一:用Bash循环(直观易懂)
这种方法逻辑清晰,新手也能快速理解,还能灵活调整分隔线样式:
# 先创建/清空目标文件(避免之前的内容干扰) > final.txt # 遍历所有lab_开头的txt文件 for file in lab_*.txt; do # 将当前文件内容追加到final.txt cat "$file" >> final.txt # 插入分隔线 echo "=============" >> final.txt done # 可选:删除最后一行多余的分隔线(因为最后一个文件后不需要) sed -i '$d' final.txt
提示:如果你的文件名包含空格,一定要用双引号包裹$file,避免出现错误。
方法二:用Awk命令(一行搞定,更简洁)
如果想少敲几行代码,用Awk可以一次性完成,而且自动避免末尾的多余分隔线:
awk 'FNR==1 && NR!=1 {print "============="} 1' lab_*.txt > final.txt
简单解释下逻辑:
FNR==1 && NR!=1:当处理到第二个及以后文件的第一行时,先打印分隔线1:Awk里的简写,表示打印当前行(也就是每个文件的内容)
这样出来的final.txt里,每个lab_X.txt的内容之间都会有你想要的分隔线,完美符合需求!
内容的提问来源于stack exchange,提问作者kubectlgetpods
相关产品推荐
相关产品推荐

