Di dalamnya grep
Anda dapat menggunakan --group-separator
untuk menulis sesuatu di antara pertandingan grup.
Ini berguna untuk memperjelas blok apa yang kita miliki, terutama ketika menggunakan -C X
opsi untuk mendapatkan garis konteks.
$ cat a
hello
this is me
and this is
something else
hello hello
bye
i am done
$ grep -C1 --group-separator="+++++++++" 'hello' a
hello
this is me
+++++++++
something else
hello hello
bye
Saya belajar menggunakan baris kosong sebagai konteks "pemisah-kelompok" untuk memahami bagaimana hanya memiliki baris kosong, dengan mengatakan --group-separator=""
.
Namun, bagaimana jika saya ingin memiliki dua baris kosong? Saya mencoba mengatakan --group-separator="\n\n"
tetapi saya mendapatkan literal \n
s:
$ grep -C1 --group-separator="\n\n" 'hello' a
hello
this is me
\n\n
something else
hello hello
bye
Hal-hal lain seperti --group-separator="\nhello\n"
tidak berhasil juga.
printf
atauecho
. Dalam kasus Anda,grep -C1 --group-separator=$'hello\nfedorqui' 'hello' a
ini setara.$''
milik Anda akan menjadi cara yang baik untuk pergi!$'$var'
(tidak dapat memperluas / mencetak nilai variabel jika ditetapkan dengan kutipan tunggal!) kan? sedangkan"$(echo $var)"
bisa bekerja.$'"$var"'
. Itu$'
+"$var"
+'
.