Jawaban:
Grep memiliki opsi berikut yang akan memungkinkan Anda melakukan ini (dan hal-hal seperti itu). Anda mungkin ingin melihat halaman manual untuk informasi lebih lanjut:
-A num Cetak baris num konteks tertinggal setelah setiap pertandingan. Lihat juga opsi -B dan -C.
-B num Cetak baris num konteks terkemuka sebelum setiap pertandingan. Lihat juga opsi -A dan -C.
-C [num] Cetak baris num dari konteks terkemuka dan tertinggal di sekitar setiap pertandingan. Standarnya adalah 2 dan setara dengan -A 2 -B 2. Catatan: spasi tidak boleh diberikan antara opsi dan argumennya.
Jika Anda memiliki GNU grep
, itu adalah opsi -A
/ --after-context
. Kalau tidak, Anda bisa melakukannya dengan awk
.
awk '/regex/ {p = N}
p > 0 {print $0; p--}' filename
Gunakan -A
argumen untuk grep
menentukan berapa banyak baris di luar pencocokan dengan output.
Cetak garis N setelah garis yang cocok
Anda dapat menggunakan grep
dengan -A n
pilihan untuk mencetak N baris setelah baris yang cocok.
Sebagai contoh:
$ cat mytext.txt
Line1
Line2
Line3
Line4
Line5
Line6
Line7
Line8
Line9
Line10
$ grep -wns Line5 mytext.txt -A 2
5:Line5
6-Line6
7-Line7
Opsi terkait lainnya:
Cetak N baris sebelum mencocokkan garis
Menggunakan -B n
opsi Anda dapat mencetak garis N sebelum mencocokkan garis.
$ grep -wns Line5 mytext.txt -B 2
3-Line3
4-Line4
5:Line5
Cetak garis N sebelum dan sesudah garis yang cocok
Menggunakan -C n
opsi, Anda dapat mencetak garis N sebelum dan sesudah garis yang cocok.
$ grep -wns Line5 mytext.txt -C 2
3-Line3
4-Line4
5:Line5
6-Line6
7-Line7
awk '/regex/{p=2} p > 0 {print $0; p--}' filename
- bekerja, milikmu tidak.