Mengganti Teks di File Menggunakan `sed` di Linux
Kadang kalau harus edit teks di banyak file satu per satu rasanya nyebelin. Untungnya ada sed (Stream Editor) di Linux yang bikin semuanya gampang. Bisa langsung search & replace teks di banyak file sekaligus.
1. Apa Itu sed?
sed itu command-line tool buat edit teks di stream data. Bisa dipakai untuk:
- Mencari teks
- Mengganti teks
- Menghapus atau menyisipkan teks
2. Contoh Kasus: Ganti Teks di Banyak File
Misal punya banyak file .txt dan ingin ganti semua abc jadi aab. Cara pakai sed:
sed -i 's/abc/aab/g' *.txtPenjelasan:
-i→ langsung ubah file tanpa bikin salinan.'s/abc/aab/g'→suntuk substitution,abcdigantiaab,gartinya semua occurrence di tiap baris.*.txt→ semua file dengan ekstensi.txtdi folder sekarang.
3. Contoh Praktis
File sebelum:
-
file1.txt:abc is a test another abc here -
file2.txt:abc in this file too
Setelah dijalankan:
sed -i 's/abc/aab/g' *.txtHasil:
-
file1.txt:aab is a test another aab here -
file2.txt:aab in this file too
4. Tips dan Trik
-
Backup sebelum edit:
sed -i.bak 's/abc/aab/g' *.txtBikin file backup
.baksebelum diubah. -
Regex lebih kompleks:
sedsupport regular expression untuk search & replace yang lebih canggih. -
Preview sebelum ubah:
sed 's/abc/aab/g' *.txtLihat hasil tanpa ubah file.
5. Kesimpulan
Pada akhirnya, sed itu tool wajib buat siapa pun yang sering edit teks di Linux. Bisa batch replace teks, hemat waktu, dan nggak bikin ribet. Sejak pakai sed, pekerjaan edit file banyak jadi jauh lebih cepat dan aman kalau sambil bikin backup.