Dengan grep
, saya ingin memilih semua garis yang cocok dengan pola, dan yang tidak cocok dengan pola lain. Saya ingin dapat menggunakan doa tunggal grep
sehingga saya dapat menggunakan --after-context
opsi (atau --before-context
, atau --context
).
-v
tidak layak di sini, karena meniadakan semua pola yang saya berikan untuk grep
menggunakan -e
opsi.
Contoh
Saya ingin mencari garis yang cocok needle
, mengabaikan garis yang cocok ignore me
, dengan satu baris konteks berikut.
Ini file input saya:
one needle ignore me
two
three
four needle
five
Output yang saya inginkan adalah:
four needle
five
Seperti yang Anda lihat, solusi naif ini tidak berfungsi:
$ cat file | grep --after-context=1 needle | grep -v 'ignore me'
two
---
four needle
five
ack