28 poin oleh xguru 2021-11-15 | 1 komentar | Bagikan ke WhatsApp
  • Cetak hanya 1 baris
    sed -n '10p' file.txt
  • Ganti karakter di semua baris kecuali baris ke-5
    sed '5!/s/foo/bar/' file.txt
  • Ganti dengan regex di semua baris yang diawali karakter tertentu
    sed '/^hello/ s/h/H/' file.txt
  • Ganti hanya dari baris ke-5 sampai baris terakhir
    sed '5,$ s/foo/bar/' file.txt
  • Hapus file kosong
    sed '/^$/d' file
  • Cetak semua baris di antara dua regex
    sed -nE '/^foo/,/^bar/p' file.txt
  • Gunakan delimiter kustom agar lebih mudah mencari string yang mengandung slash
    sed 's_/bin/bash_/bin/sh_' file.txt
  • Hapus string duplikat yang dipisahkan spasi (yang muncul tiga kali dikecualikan)
    sed -E 's_([a-zA-Z0-9_]+) \\1_\\1_ig' f1
  • Cari pola tertentu lalu ubah, dan simpan hanya yang dimodifikasi ke file lain
    sed 's_foo_bar_w replaced.txt' file.txt
  • Ganti beberapa hal sekaligus
    sed -e 's_foo_bar_' -e 's_hello_HELLO_' file.txt
  • Hapus semua komentar di antara dua keyword lalu sisipkan baris kosong
    sed -E '/start/,/end/ s/#.*//' file.txt
  • Hapus semua komentar yang diawali dengan #
    sed -E '/^#/d' f1
  • Cetak hanya sampai pola tertentu muncul
    sed '/start/q' file.txt
  • Sisipkan file setelah baris tertentu
    sed '5 r newfile.txt' file.txt
  • Tambahkan teks pada baris setelah bagian yang cocok dengan regex tertentu
    sed '/foo/a\\AFTER FOO' file.txt
  • Ganti baris yang cocok dengan regex tertentu
    sed '/foo/c\\FOO IS CHANGED' file.txt
  • Simpan semua komentar yang diawali dengan # ke file lain
    sed -E '/^#/w comments.txt' file.txt
  • Cetak setiap baris kedua saja (bisa diubah menjadi 3/4 dan seterusnya)
    sed -n '1~2p' file.txt
  • Edit file secara langsung sambil membuat backup
    sed -i.bak 's/hello/HELLO/' file.txt
  • Tambahkan dua baris kosong setelah regex yang cocok
    sed -E '/^#/G G' file.txt

1 komentar

 
tribela 2021-11-15

Mengetahui bahwa karakter selain slash juga bisa dipakai sebagai delimiter benar-benar tip yang wajib diketahui.

Ini cukup sering berguna, misalnya saat mengganti URL repositori apt karena cukup sering perlu menangani slash