Синтаксический анализ / proc / pid / smaps - PullRequest
0 голосов
/ 07 марта 2012

У меня есть данные, которые имеют вид:

START
...
... 
END
START
...
...
END

Я хочу провести некоторый анализ данных и поэтому хотел бы извлечь строки между START и END.Теперь проблема в том, что я хочу извлечь данные кусками.Например, для извлечения данных между первой парой START и END выполните анализ, затем вторую пару, затем третью пару.Я изучал Sed, чтобы сделать это.Как я могу использовать sed (или любой другой инструмент) для достижения этой цели?

1 Ответ

0 голосов
/ 08 марта 2012

Это может работать для вас:

sed '/START/,/END/{/START/{h;d};H;/END/{g;s/\.\.\./foo/gp};d}' file
START
foo
foo 
END
START
foo
foo
END

Или это:

awk '/START/{p=1;n++};p{if(n==1)sub(/\.\.\./,"foo");if(n==2)sub(/\.\.\./,"bar");print};/END/{p=0}' file
START
foo
foo 
END
START
bar
bar
END
...