web-dev-qa-db-fra.com

Imprimer les lignes dans le fichier depuis la ligne de correspondance jusqu'à la fin du fichier

J'ai écrit le awk suivant pour imprimer des lignes à partir de la ligne de correspondance jusqu'à EOF

awk '/match_line/,/*/' file

Comment puis-je faire de même dans sed?

31
lidia
sed -n '/matched/,$p' file
awk '/matched/,0' file
49
ghostdog74

C'est pour une version vraiment ancienne de GNU sed sous Windows

GNU sed version 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

Imprimer la ligne correspondante et les lignes suivantes à la fin du fichier

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

Imprimer le début du fichier jusqu'à MAIS PAS y compris la ligne correspondante

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

Imprimer le début du fichier jusqu'à ET, y compris la ligne correspondante

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

Imprimer tout après la ligne correspondante

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