Arquivo de texto Greping

0

Eu tenho um arquivo de texto:

Line1 aaa
Line2 aaa
Line3 aaa
Line4 importan info about Linux
Line5 infoA
Line6 infoB
Line7

Gostaria de exibir a linha contendo a palavra "Linux" e duas linhas a mais.

Em relação à primeira parte, é claro:

cat textfile.txt |grep Linux

Mas como exibir mais duas linhas?

    
por vico 18.09.2015 / 21:59

2 respostas

6

Use a opção -A de grep :

cat textfile.txt | grep -A2 Linux

ou sem o cat :

grep -A2 Linux textfile.txt
    
por Florian Diesch 18.09.2015 / 22:06
0

Awk abordagem alternativa

$ awk '/Linux/ {print $0; for (i=1;i<=2;i++){ getline; print $0 } }' test-text-file.txt                               
Line4 importan info about Linux
Line5 infoA
Line6 infoB

Ou como o Pilot6 sugeriu nos comentários, você pode fazer

awk '/Linux/{x=NR+2}(NR<=x)' test-text-file.txt

    
por Sergiy Kolodyazhnyy 18.09.2015 / 23:27