在模式之后将多行文本从文件插入到另一个文件

时间:2011-02-22 00:59:17

标签: bash

我有以下文件:

  

text2insert
  filewithpattern

也知道:

  

图案

如何将text2insert中的行插入filewithpattern但在pattern行之后?

使用bash 2.05b

更新: 在filewithpattern看起来像之前:

  

垃圾
  模式1
  模式2
  垃圾

之后:

  

垃圾
  模式1
  text2insert lines
  text2insert lines
  text2insert lines
  模式2
  垃圾

2 个答案:

答案 0 :(得分:5)

sed -e '/pattern/r text2insert' filewithpattern

答案 1 :(得分:0)

awk 'FNR==NR{      a[c++]=$0;next     }
/pattern1/{g=1;next}
/pattern2/{g=0;next}
g{ 
  for(i=1;i<=c;i++){
    print a[i]
  }
}' text2insert filewithpattern

为什么你的输出需要“垃圾”?您之前的问题似乎不包括“垃圾”