Skip to content

zaidan's blog

a newbie, writing IT-related stuff and some personal experiences

Menu
  • IT
  • Personal life/opinion
  • Linux
  • Sepeda
  • Proxmox
  • VM/Container
  • Kuliah/Catatan Kuliah
Menu

Perintah sed di Linux

Posted on 31/07/202401/08/2024 by Zaidan

Hai semuanya, apa kabar? Kali ini saya mau nulis tentang Linux lagi nih. Yaitu perintah sed yang bisa kita gunakan untuk manipulasi teks pada shell atau dokumen/file. sed sendiri artinya adalah Stream Editor.

Beberapa fungsi dari perintah sed ini adalah untuk mengganti kata (replace), menghapus kata atau baris, dan menyisipkan kata/teks.

Untuk tulisan kali ini kita bahas Replace dulu ya.

Sintaks yang bisa digunakan untuk mengganti teks adalah sed ‘s/lama/baru/g’ [namafile]

  • s sebagai tanda operasi replace
  • lama adalah kata yang ingin diganti, baru adalah penggantinya
  • g artinya global. Artinya, kalau tidak pakai tag ini, maka replace akan berlaku/terjadi hanya pada kemunculan kata pada baris yang sama

Untuk pengujian kali ini, kita coba buat file teks contoh yang isinya seperti ini:

$ cat test-sed.txt
apel merah,mangga hijau,jeruk oranye,belimbing kuning,melon hijau
daun hijau,ranting cokelat,rumput hijau,air bening,langit biru

Kita coba gunakan sintaks diatas. Kita akan coba ganti kata “hijau” dengan “ijo”.

Kita coba terlebih dahulu tanpa menggunakan tag 'g':

$ sed 's/hijau/ijo/' test-sed.txt
apel merah,mangga ijo,jeruk oranye,belimbing kuning,melon hijau
daun ijo,ranting cokelat,rumput hijau,air bening,langit biru

Bisa kita lihat kalau kata yang berhasil diganti adalah kemunculan kata hijau pertama pada tiap baris. Sedangkan kata hijau selanjutnya (pada baris yang sama) tidak diganti.

Oiya, perintah sed yang barusan kita lakukan ini tidak mengganti isi filenya ya. Saat kita cat hasilnya sama dengan hasil sebelumnya:

$ cat test-sed.txt
apel merah,mangga hijau,jeruk oranye,belimbing kuning,melon hijau
daun hijau,ranting cokelat,rumput hijau,air bening,langit biru

Sekarang, kita coba gunakan tag ‘g’:

$ sed 's/hijau/ijo/g' test-sed.txt
apel merah,mangga ijo,jeruk oranye,belimbing kuning,melon ijo
daun ijo,ranting cokelat,rumput ijo,air bening,langit biru

Saat menggunakan tag ‘g’, semua kemunculan kata ‘hijau’ berhasil diganti dengan kata ‘ijo’.

Seperti yang sudah kita pelajari sebelumnya, perintah sed ini tidak mengganti isi file. Apabila kita ingin mengganti isi filenya, kita bisa gunakan redirection dengan sintaks > [namafile].

File untuk outputnya kita gunakan file yang lain ya. Karena apabila kita gunakan file yang sama untuk menyimpan outputnya, maka hasil atau isi filenya akan jadi kosong.

Sekarang, kita coba jalankan kembali perintah sed dan hasilnya kita simpan pada file baru dengan nama hasil-sed.txt.

$ sed 's/hijau/ijo/g' test-sed.txt > hasil-sed.txt
$ cat hasil-sed.txt
apel merah,mangga ijo,jeruk oranye,belimbing kuning,melon ijo
daun ijo,ranting cokelat,rumput ijo,air bening,langit biru

Hasil dari perintah sed berhasil kita simpan pada file baru yang bernama hasil-sed.txt.

Gimana teman-teman? Perintah sed untuk mengganti teks ini susah atau mudah nih? Rencananya, di tulisan yang akan datang kita coba untuk gunakan perintah ini untuk fungsi yang lain. Sampai jumpa, bye~

[EDIT] Ternyata, kita bisa menggunakan perintah sed ini dan hasilnya langsung diterapkan pada file. Caranya, kita tambahkan flag -i. Jadi, perintah yang digunakan adalah sed -i .

Blog ini kayanya belum bisa jadi rujukan teknis yang sangat valid ya. Masih lebih cocok jadi catatan harian saya hehe.

Bye~

 

Leave a Reply Cancel reply

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

Tulisan saya yang lain:

  • Datacenter
  • Manajemen File di Linux – part 3 – Ekstensi File di Linux
  • Penggunaan Dasar GNOME3 di Red Hat Enterprise Linux 8
  • Menandai VM/CT di Proxmox VE

Arsip blog

  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
© 2025 zaidan's blog | Powered by Superbs Personal Blog theme