Use a opção -A
de grep
:
cat textfile.txt | grep -A2 Linux
ou sem o cat
:
grep -A2 Linux textfile.txt
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?
Use a opção -A
de grep
:
cat textfile.txt | grep -A2 Linux
ou sem o cat
:
grep -A2 Linux textfile.txt
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