Untuk menggunakan grepdua baris yang berbeda, cari kedua pola
$ grep -e sweet -e lemon file_type
This is a sweet
lemon.
Atau gunakan pergantian
$ grep -E 'sweet|lemon' file_type
This is a sweet
lemon.
Untuk mendapatkan baris berikutnya setelah suatu pola, Anda bisa menggunakan opsi konteks
$ grep -A1 sweet file_type
This is a sweet
lemon.
Tetapi jika Anda mencari secara eksplisit untuk pola multiline, itu karena sulit grepberpikir dalam garis ... . Anda .*akan menangkap segalanya antara "manis" dan "lemon" di telepon . Kita bisa mendapatkan "lemon" pada baris berikutnya dengan -Pmenggunakan \nuntuk mencocokkan baris baru dan dengan mengatakan grepfile tersebut dipisahkan dengan -z:
$ grep -zPo 'This is a sweet\nlemon' file_type
This is a sweet
lemon.
Catatan:
-EGunakan ekspresi reguler yang diperluas (untuk menggunakan |karakter untuk pergantian tanpa perlu menghindarinya)
-An Cetak garis tambahan setelah pola, di mana n adalah jumlah garis trailing untuk dicetak
-PGunakan ekspresi reguler gaya perl ("eksperimental" dalam grep- instal pcregrepsebagai gantinya untuk dukungan perl regex yang lebih baik)
-zGunakan karakter nol sebagai pemisah (hanya berpura-pura dalam kasus ini, tetapi grepakan mengambil kata kami untuk itu)
-o hanya cetak bagian yang cocok
grep -zPperintah akan bekerja dalam kasus khusus ini (file yang terdiri dari tepat dua baris) secara umum akan menganggap file biasa yang dipisahkan baris baru sebagai satu baris, sehingga membuang seluruh isi file (jika ada kecocokan di suatu tempat) atau tidak sama sekali; biasanya bukan itu yang digunakan oranggrep.