Tips Menggunakan sed Untuk Insert Baris Sebelum dan Sesudah Baris yang Match Ditemukan

Posted by

Sed merupakan salah satu tools powerfull yang berguna untuk manipulasi isi suatu file. Pada postingan kali ini saya ingin membagikan tips simple untuk menyisipkan suatu baris dengan lokasi sebelum atau sesudah baris yang dicari dengan menggunakan sed.

Sebagai contoh, saya memiliki sebuah file test.txt dengan isi sebagai berikut

Ini nomor 1
Ini nomor 2
Ini nomor 3
Ini nomor 4
Ini nomor 5

Menyisipkan Baris Sebelum Baris yang Match Ditemukan

Misal kita ingin insert baris “Ini Nomor 100” sebelum baris “Ini nomor 3”, berikut perintah sed nya

sed '/^Ini nomor 3/i Ini nomor 100' test.txt

Maka hasilnya nanti akan menjadi seperti berikut

Ini nomor 1
Ini nomor 2
Ini nomor 100
Ini nomor 3
Ini nomor 4
Ini nomor 5

Baca Juga : Cara Membuat Permanent /etc/resolv.conf pada Ubuntu 18.04

Menyisipkan Baris Sesudah Baris yang Match Ditemukan

Misal kita ingin insert baris “Ini Nomor 200” sesudah baris “Ini nomor 3”, berikut perintah sed nya

sed '/^Ini nomor 3/a Ini nomor 200' test.txt

Maka hasilnya nanti akan menjadi seperti berikut

Ini nomor 1
Ini nomor 2
Ini nomor 3
Ini nomor 200
Ini nomor 4
Ini nomor 5

Perintah sed diatas berlaku untuk menampilkan hasil perubahan saja tanpa melakukan perubahan isi file tersebut, lalu bagaimana supaya sekaligus mengubah isi file tersebut sesuai dengan hasil manipulasi sed? caranya cukup mudah, tambahkan option -i saja setelah sed jadi seperti contoh berikut

sed -i '/^Ini nomor 3/i Ini nomor 100' test.txt

Cukup mudah bukan?

Mungkin cukup sekian, semoga bermanfaat

Leave a Reply

Your email address will not be published. Required fields are marked *

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.