Langsung ke konten utama

Tutorial Mengganti Text Di Dalam File Via Terminal Linux

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 BLOGURL 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! :)

Komentar

Postingan populer dari blog ini

Perintah - Perintah Awk Pada Linux / Unix

ketemu lagi di blog Tutorial Linux U buntu Berbahasa Indonesia . Kali ini saya akan sedikit men yinggung dulu tentang s atu fitur yang ada di linux/unix. "Awk " adalah sebuah perintah pada Linux / Unix yang mempunyai kegunaan untuk mem-parsing atau mengurai sebuah file . Hampir mirip dengan "grep", namun bedanya grep digunakan ketika kita akan mem-filter sebuah isi direktori dengan sebuah ketentuan. seperti misalnya : ls -l /home/user | grep report Pada contoh perintah diatas akan menampilkan file apa saja yang ada didalam folder /home/user, dengan ketentuan file-file yang ditampilkan mengandung nama report . Sudah saya berikan sedikit gambaran tentang "grep" dan "awk" . Saya akan memberikan sedikit analogi mengenai awk ini. Skenario : Kita mempunyai sebuah server yang berperan sebagai proxy http untuk website-website kita karena alasan keterbatasan IP Public. Lalu satu waktu kita membutuhkan beberapa informasi tentang seberapa banyak pengun...

Kumpulan Perintah-Perintah Dasar di Linux Ubuntu (Part 1)

Saya tidak absen lagi sekarang untuk memposting artikel di blog Tutorial Linux Ubuntu Berbahasa Indonesia ini. Bicara mengenai hal-hal yang berat, saya jadi lupa kalau mungkin diluar sana banyak para newbie yang masih belajar linux seperti saya yang masih sangat asing dengan perintah-perintah dasar di linux . Untuk itulah saya menulis artikel ini, karena perintah-perintah di linux ini akan sangat diperlukan untuk pengoperasian kedepannya. Oke, langsung saja kita absen mereka satu per satu! :) [ sudo ] Makhluk pertama ini bernama SUDO. Mungkin jika anda browsing tutorial-tutorial linux di website lain dan menemukan makhluk ini diawalan sebuah perintah anda akan bertanya-tanya.."mahluk apakah ini?" :D Saya perkenalkan ya...sudo adalah singkatan dari S uper U ser DO . Artinya, mendeklarasikan bahwa yang akan memberi perintah adalah Super User atau lebih familiarnya Administrator. Contoh : sudo apt-get installa apache [ apt-get ] Yang kedua adalah ma khluk bernama apt-...

Tutorial Failover Mikrotik dan External Proxy

Pendahuluan Tutorial ini diperuntukan mesin Mikrotik dengan External Proxy, yang akan dibahas disini adalah bagaimana Mikrotik bisa menonaktifkan perintah redirect port yang dibelokkan ke external proxy ketika mesin server mati atau terputus dengan server atau service port proxy dalam kondisi mati secara tiba-tiba tetapi kondisi mesin masih menyala, dan bagaimana Mikrotik bisa kembali mengaktifkan redirect port ke external proxy ketika terhubung kembali dengan server atau port proxy tersedia kembali. Dengan cara: 1. Mikrotik selalu melakukan ping ke IP server external proxy, jika terputus maka Mikrotik akan menonaktifkan perintah redirect port dan sebaliknya. 2. Disini tidak akan tergantung dengan  situs-situs diluar agar kondisinya bisa digaransi, melainkan dari server external proxy akan memantau port proxy-nya sendiri setiap berapa detik sekali, setiap kondisi port proxy mengalami kegagalan maka server akan mengirimkan perintah ke Mikrotik melalui SSH agar Mikrotik...