- 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
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