July 20, 2024

Cara Mengubah Isi Berkas Sekaligus Didalam Website

3 min read

Sering membuat berkas yang menggunakan kata/kalimat yang berulang-ulang? Dalam banyak file/berkas? Dan seringkali harus diubah? Kalau iya, silakan teruskan ke bawah. Kalau tidak? Silahkan simak tutorial di bawah ini.

Contoh kasus. Budi sedang  membuat situs sederhana yang terdiri dari 4 halaman:

  1. home.html yang akan digunakan sebagai beranda.
  2. profil.html yang berisi profil perusahaan dan lain-lainnya.
  3. kontak.html, menyediakan kontak dan alamat yang bersangkutan.
  4. tentang.html, berisi penjelasan tentang sejarah berdirinya, dan tentang perusahaannya.

Tampilan halamannya seperti pada gambar di bawah:

Tampilan menu web

Nah, setelah jadi, ternyata berkas-berkas tersebut ada yang salah. Di bagian footernya (copyright). Kalimat “copyright ©  ts @ 2011” yang benarnya adalah: “© 2011 Budi”.

Mau mengubah semua kalimat tersebut dengan membuka tiap2 filenya, si Budi malas. Dia pikir harusnya ada cara yang lebih praktis. Karena, gimana kaloberkas/file yang dibuatnya tidak hanya 4, tapi 24?Mabok, kawan! Kebetulan ia menggunakan Ubuntu linux dan dengar-dengar ada perintah yang dapat melakukan hal tersebut, perintah “sed”atau gabungan perintah “grep + sed”. Gimana dengan pemakai Windows? Sayang sekali, hal tersebut tidak dapat dilakukan, kecuali windowsnya di install program ‘sed’ dan ‘grep’, yang mana akan cukup merepotkan.

Manual ‘sed’ dan ‘grep’

Setelah pencarian panjang dan melelahkan (versi Budi), dia mendapatkan caranya. Contoh kodenya adalah:

# sed –i ‘s/kata atau kalimat yang ingin diubah/kata yang ingin dipakai/g’ nama_berkas
# grep sed –i ‘s/kata atau kalimat yang ingin diubah/kata yang ingin dipakai/g’ nama_berkas

Dan diapun lalu mempraktikkannya ke berkas-berkas yang ia buat tersebut, menjadi:

# sed –i ‘s/copyright \© ts @ 2011/\© 2011 Budi/g’ *.html
# grep –rl “copyright \© ts @ 2011” . | xargs sed –i ‘s/copyright \© ts @ 2011/\© 2011 Budi/g’

pwd (direktori tempat kita berada) dan ls –l (tampilkan semua file)

Kode home.html dkk sebelum diubah.

Kode home.html dkk setelah kode di atas diketikkan.

Kode home.html dkk setelah perubahan terjadi.

Penjelasan kode:

  1. Perhatian!! Tanda kutip satu yang dipakai di penjelasan kode hanya untuk memperjelas kode nya. Bila ingin mengetik perintahnya (contoh: ‘sed’), jangan sertakan tanda kutip satunya.
  2. sed –i’ artinya perintah ‘sed’ akan mengubah isi file tersebu. Bila tidak memberikan tanda ‘–i’, ‘sed’ hanya akan menampilkan perubahan yang terjadi di terminal, sedangkan berkasnya tetap utuh. Contoh: bila ingin mengubah isi file home.html, perubahan yang terjadi hanya akan ditampilkan di terminal. Isi berkas home.html nya sendiri tidak akan berubah.
  3. s/copyright \© ts @ 2011/\© 2011 Budi/g’. Tanda ‘/’ utk memisahkan perintah dan kata/kalimat yang ingin diubah. Bisa diganti juga dengan tanda-baca yang lain seperti ‘|’ atau ‘#’ dan lain sebagainya.‘s’ di depan berarti substitute (menggantikan). Dan ‘g’, global, artinya lakukan berulang-ulang pada tiap-tiap kata/kalimat yang ingin diubah tersebut. Untuk tanda ‘\’ di depan tanda-baca ‘&’, tanda ‘\’ dipakai karena tanda-baca ‘&’ adalah termasuk perintah ‘sed’. Oleh karenanya perlu dikasih tanda ‘\’ agar diartikan apa adanya. Bila hanya ingin mengubah angka/kata-kata saja, biasanya tidak sesulit ini, harus memberikan tanda ‘\’ di tempat-tempat tertentu.
  4. *.html’ artinya mengubah semua file yang memiliki ekstensi .html (Dalam contoh kasus di atas, semua berkas tersebut). Bila ingin mengubah semua file tanpa memandang ekstensi, bisa langsung memakai tanda ‘*’.
  5. grep –rl “copyright © ts @ 2011” .’artinya ambil (grep) semua file dalam direktori ini beserta sub-direktorinya (.) yang mengandung teks ‘copyright © ts @ 2011’. Lakukan pencarian secara berulang-ulang/recursive dan tampilkan nama berkas/file nya (–rl).
  6. ‘|’ adalah pipeline. Di Linux, kita dapat menggabungkan penggunaan lebih dari 2 perintah. Caranya, yaitu menggunakan pipeline. Dalam hal ini, perintah yang digabungkan adalah ‘grep’untuk mencari semua file dalam suatu direktori beserta sub-direktori nya dan ‘sed’ untuk mengubah isi berkas nya.
  7. xargs’ akan menjalankan perintah dengan menerima masukan dari standar input (stdio), dalam contoh kasus ini adalah keluaran dari ‘grep’, dan kemudian diteruskan ke perintah di belakang kata ‘xargs’ tersebut. Untuk lebih jelasnya, bisa coba menjalankan perintah ‘grep –rl “copyright \© ts @ 2011” .’  Nah, keluarannya ini yang akan di proses oleh ‘xargs’’ untuk diteruskan ke perintah ‘sed –i ‘s/copyright \© ts @ 2011/\© 2011 Budi/g
  8. Sekian..

Contoh penggunaan perintah ‘sed’ dan ‘grep’ di atas hanyalah sedikit dari apa yang dapat dilakukan oleh kedua perintah tersebut. Dengan menggunakan perintah ‘sed’, kita dapat mengubah semua angka-angka dalam satu/lebih file menjadi apa yang kita inginkan, misalnya. Dan dengan ‘grep’, kita dapat mencari kata/kalimat/angka/simbol dsb dengan pola-pola tertentu. Kok bisa? Semuanya bisa dilakukan karena adanya peran serta Regular Expression dalam kedua perintah tersebut. Kerenkan…???

Demikian ceritanya si Budi. “Gimana ceritamu..???” Wah, jadi mirip iklan di Tv saja..

Ok sampai disini dulu, semoga bermanfaat dan selamat mencoba..

0 thoughts on “Cara Mengubah Isi Berkas Sekaligus Didalam Website

  1. Ada juga cara lain dengan memanfaatkan software Dreamweaver . Gunakan fitur “Find and Replace” , kemudian ubah “Find in”-nya menjadi “Folder” dan browse folder letak file yang akan diubah teksnya . Untuk Opsi “Search” tetap gunakan “Source Code” . Lanjut dengan mengisi kata yang akan diubah pada bagian “Find” dan kata yang baru pada bagian “Replace” . Tinggal klik “Replace All” untuk mengeksekusi perubahan . That’s all !! Semoga bermanfaat !

Leave a Reply

Your email address will not be published. Required fields are marked *

Copyright © All rights reserved. | Newsphere by AF themes.