Jak łatwo wydrukować linię powyżej meczu i pominąć sam mecz? grep
-A
, -B
i -o
opt nie rozwiąż go. Może trochę magii awk
?grep - drukuj wiersz wcześniej, nie drukuj mecz
na przykład:
$ cat foo.txt
bar
foo
baz
foo
$ cat foo.txt | grep foo-SOMETHING
bar
baz
Edit
- w przypadku gdy linia 2 i 3 ma "foo", następnie linia 1 i 2 powinny być drukowane (chociaż nie jestem bardzo surowe tutaj)
Dodatkowa funkcja: rozważ przykład:
bar
foo
baz
foo
foo
ta powinna idealnie powrócić
bar
baz
foo
Co z '-B'? –
@ AdrianFrühwirth drukuje poprzednią linię ORAZ pasującą linię. – Barmar
co dwie linie ciągłe pasują do 'foo'? wydrukować pierwszą linię? lub zignorować oba? – Kent