Perintah sed di Linux – menghapus baris

Hai semuanya, apa kabar? Kali ini saya mau lanjutin tulisan yang kemarin. Di tulisan sebelumnya, kita sudah sama-sama belahar penggunaan dasar perintah sed ini, yaitu untuk mengganti teks pada suatu file.

Sekarang kita coba fungsi lainnya yaitu menghapus baris pada file. Untuk pengujian kali ini, saya buat suatu file baru dengan nama test-hapus-sed.txt yang terdiri dari tiga baris. Baris pertama isinya nama buah, baris kedua isinya nama binatang peliharaan, baris ketiga isinya nama planet.

$ cat test-hapus-sed.txt
Nanas, Alpukat, Sirsak, Pepaya, Tomat
Kucing, Anjing, Kelinci, Ikan, Burung
Merkurius, Venus, Bumi, Mars, Jupiter

Sintaks yang digunakan adalah sed '/kata/d' [namafile] . Namun, perintah tersebut case-sensitive sehingga apabila kita memasukkan kata atau teks yang tidak sesuai dengan kata atau teks yang ada pada file, maka tidak akan muncul/berhasil dicari.

Untuk mengatasi hal ini, kita gunakan tambahan huruf I pada sebelum huruf d. Sintaks yang digunakan menjadi sed '/kata/Id' [namafile] .

Kita coba yuk. Pada pengujian ini kita coba hilangkaan baris kedua, yaitu yang berisi nama-nama hewan. Kita gunakan Kucing sebagai kata kuncinya.

$ sed '/Kucing/d' test-hapus-sed.txt
Nanas, Alpukat, Sirsak, Pepaya, Tomat
Merkurius, Venus, Bumi, Mars, Jupiter

Baris kedua berhasil dihapus dengan perintah sed. Namun, seperti yang kita pelajari sebelumnya, perintah sed ini tidak langsung mengganti isi file. Untuk sekaligus mengganti isi file, kita gunakan flag tambahan yaitu sed -i. Sehingga perintah yang dijalankan adalah sed -i '/Kucing/Id' test-hapus-sed.txt . Kita coba juga gunakan opsi case insensitive:

$ cat test-hapus-sed.txt
Nanas, Alpukat, Sirsak, Pepaya, Tomat
Kucing, Anjing, Kelinci, Ikan, Burung
Merkurius, Venus, Bumi, Mars, Jupiter

$ sed -i '/Kucing/Id' test-hapus-sed.txt
$ cat test-hapus-sed.txt
Nanas, Alpukat, Sirsak, Pepaya, Tomat
Merkurius, Venus, Bumi, Mars, Jupiter

Kita berhasil menghapus baris kedua dan perubahan tersebut berhasil diterapkan pada file.

Begitulah penggunaan perintah sed untuk menghapus baris dengan menggunakan kata tertentu sebagai ‘kunci’ pencariannya. Gimana, gampang atau susah nih menurut teman-teman? Untuk tulisan kali ini sampai disini dulu yaa. Sampai jumpa, bye~

 

Leave a Comment