Печать строк в файле от строки совпадения до конца файла - PullRequest
27 голосов
/ 08 августа 2010

Я написал следующий awk для печати строк от строки совпадения до EOF

awk '/match_line/,/*/' file

Как я могу сделать то же самое в sed?

Ответы [ 2 ]

49 голосов
/ 08 августа 2010
sed -n '/matched/,$p' file
awk '/matched/,0' file
15 голосов
/ 28 декабря 2012

Это действительно старая версия GNU sed для Windows

GNU sed версия 2.05

http://www.gnu.org/software/sed/manual/sed.html

-n only display if Printed
-e expression to evaluate
p stands for Print
$ end of file
line1,line2 is the range
! is NOT

haystack.txt

abc
def
ghi
needle
want 1
want 2

Вывести соответствующую строку и следующие строки в конец файла

>sed.exe -n -e "/needle/,$p" haystack.txt
needle
want 1
want 2

Печатать начало файла до НО, НЕ включая совпадающую строку

>sed.exe -n -e "/needle/,$!p" haystack.txt
abc
def
ghi

Печатать начало файла до AND, включая соответствующую строку

>sed.exe -n -e "1,/needle/p" haystack.txt
abc
def
ghi
needle

Печатать все что угодно после совпадения строки

>sed.exe -n -e "1,/needle/!p" haystack.txt
want 1
want 2
...