2015-09-25 1 views
-1

Я новичок в использовании «sed». У меня есть файл, который имеет следующий текст.Как найти многострочный шаблон и добавить новую строку с помощью sed

this is a test1 
length 12 
width 12 

this is test2 
length 50 
width 50 

Я не уверен, как будет выглядеть многострочная команда sed. Я хочу, чтобы мой выход будет

this is a test1 
length 12 
//width 12 
new width 40 

this is test2 
length 50 
width 50 

ответ

0

Попробуйте sed команду. Я надеюсь, что это поможет,

sed ':loop ; N ; /\n$/{s/.*/\/\/&new width 40\n/} ; t loop' FileName.txt 

Выход:

this is a test1 
length 12 
//width 12 
new width 40 

this is test2 
length 50 
width 50 
0

Эта команда будет делать это для вас.

sed 's:\(width 12\)://\1\nnew width 40:g' 

[email protected]:~$ sed 's:\(width 12\)://\1\nnew width 40:g' se.file 
this is a test1 
length 12 
//width 12 
new width 40 

this is test2 
length 50 
width 50 
Смежные вопросы