Saya punya pengalaman baru beberapa
hari kebelakang ini, sepertinya pengalaman saya akan berguna bagi anda.
Meskipun mungkin dengan kasus yang berbeda namun metode ini sepertinya
akan dapat diterapkan ketika anda menghadapi kasus lain dan membutuhkan
penyelesaian ini. Saya akan sedikit bercerita tentang kasus saya, dan
bagaimana menyelesaikannya. Selamat membaca :)
Kantor saya adalah sebuah perguruan tinggi di Bandung, dinaungi oleh
sebuah yayasan pendidikan yang juga memiliki lembaga-lembaga pendidikan
lain. Nah, kemaren itu yayasan ini menyatukan semua lembaga menjadi
kesatuan universitas. Dampaknya pada IT cukup banyak, karena setiap
lembaga berubah nama. Dengan perubahan nama seperti itu otomatis domain
internet pun berubah. Singkat cerita, sayapun mulai menyingkilkan lengan
baju dan melakukan migrasi domain, semuanya berjalan lancar sampai
dengan selesai!
Tapi ada salah satu website blogging yang merupakan multisite blogging.
Didalamnya ada ribuan user dan ribuan artikel. Migrasi domain DNS saja
tidak cukup, karena URL SETIAP BLOG, URL SETIAP ARTIKEL, URL SETIAP GAMBAR semuanya
tertanam didalam database. Cukup menantang, dimana saya harus segera
merubah semua url sialan tersebut ke url dengan domain baru. Saya yakin
andapun tidak akan mau jika harus merubah semua itu secara manual, satu
per satu, kapan selesainya? :|
Bagaimana cara mengganti text di dalam file tersebut via terminal linux? Setelah
mencari cara dan melakukan beberapa percobaan akhirnya semua itu dapat
diatasi bahkan jika saya melakukannya dari awal secara benar, itu hanya
memakan hitungan menit.
Multisite ini adalah wordpress social blogging yang dibuat untuk
menampung semua tulisan seluruh civitas, untuk site setting dan
konfigurasi script tidak terlalu sulit. Anda bisa mencarinya dengan
mudah di mbah google. Saya hanya akan fokus menyampaikan bagaimana
mengganti semua url tadi menjadi url dengan domain baru. Berikut ini
langkah-langkahnya :
- DUMP database anda. Ya, backup terlebih dahulu database anda. File backup yang saya miliki cukup besar untuk sebuah database, ratusan MB lah.
- Selanjutnya, anda tidak perlu membuka file dump tersebut karena
sangat menjengkelkan dan bikin mumet. Cukup ketikkan perintah dibawah
ini pada server linux anda :
root@apocalypsix: sed -e 's/[text_yang_mau_diganti]/[text_yang_baru]/g' [nama_file] > [output_file] - Langkah terakhir adalah meng-import kembali file output.
- Selesai!
PENJELASAN :
Perintah diatas akan mencari sebuah text dan menggantinya dengan yang
baru, pengerjaannya sangat cepat. Berbeda dengan jika saya melakukannya
dengan nano editor, memakai notepad++ pun tidak membantu banyak, masih
terdapat missing line yang tidak di eksekusi. Saya berikan contoh lain,
misalnya kita memiliki sebuah file bernama daftar_gaji yang didalamnya ada banyak text. Misalnya isinya seperti ini :
Daftar gaji berdasarkan pendidikan :SD = 500.000
SMP = 700.000
SMA = 1.300.000
D3 = 1.500.000
S1 = 2.000.000
Misalnya kita harus merubah gaji bagi yang berlulusan SD, dari 500.000 menjadi 600.000. Untuk mengganti text di dalam file via terminal linux, lakukan perintah seperti tadi :
root@apocalypsix : sed -e 's/500.000/600.000/g' daftar_gaji > daftar_gaji_baru
Kira-kira seperti itulah, kasus saya pun terselesaikan hanya dengan sepenggal sajak berbahasa linux :D
Jika anda juga mengalami kasus serupa dan bingung bagaimana cara mengganti text di dalam file via terminal linux, mungkin cara ini bisa anda pakai, sepertinya format linux dan unix pun tidak akan terlalu jauh berbeda.
Semoga bermanfaat,
Salam Penguin! :)