在文件中间添加几行

时间:2015-04-14 23:54:41

标签: sed

我想在文件中添加几个。是否可以使用sed?

original file
test1
test2
test3

添加新行后的预期输出

test1

#
testing123
#

test3

2 个答案:

答案 0 :(得分:0)

如果你不介意使用“while / read”而不是“sed”,这是一个解决方案:

[~]$ cat original.txt
test1
test2
test3

[~]$ cat new_content.txt

#
testing123
#

然后,使用以下脚本处理这两个文件:

script.sh

#!/bin/bash

while IFS= read -r line
do
        if [[ $line =~ ^test2.*$ ]]
        then
                cat new_content.txt
        else
                echo "$line"
        fi
done < original.txt

答案 1 :(得分:0)

sed '2 i\
\
#
2 a\
#\

' YourFile
  • 任意将第2行作为中间(不容易计算或在posix sed中取中间
  • i用于插入(之前)
  • a追加(后)