JavaScript‎ > ‎

Rename beberapa file

Kadang, beberapa file gambar dari kamera namanya berantakan, dan Anda tentu ingin mengubah namanya menjadi sesuatu yang lebih manusiawi.
Sebenarnya, otomatisasi dapat dilakukan langsung di DOS dengan menggunakan perintah for /l atau for /d, tapi kali ini kita tidak ingin melakukan dengan for, tapi dengan JavaScript.

Ada beberapa alasan saya menggunakan javascript dulu untuk membuat kode file batch (*.bat atau *.cmd) di dos, yaitu:
  • lebih save, karena terlebih dahulu di preview perintahnya, daripada main pipe dan main redirect.
  • Pipa | atau redirect < atau ampersand &  memang terlihat cool, leet and geek, tapi karena kadang kadang kita ceroboh dan better save than sorry. 
  • hasilnya bisa satu satu, dan dicoba dulu beberapa sample sebelum kita main bom-atom. *bump*
  • javascript dukung regex yang bagus
  • beberapa karakter tertentu berarti lain di konsol DOS
  • gw ngga jago banget shell script nya :D


Buatlah sebuah file HTML, lalu, paste kode berikut.


Kode


<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--

//taken from http://www.electrictoolbox.com/pad-number-zeroes-javascript/
function pad(number, length) {
var str = '' + number;
while (str.length < length) {
str = '0' + str;
}
return str;
}

var x = document.createElement('textarea');
x.rows=10;
x.cols=60;

var s = ''; // you need to initialise s or you'll get undefined on top of your string
for (i=1;i<100 ;i++ )
{
//perhatikan kita menggunakan double quote karena ada spasi pada nama file yang pertama
s +=('ren "a B c.'+i+'.jpg" aBc.'+pad(i,3)+'.jpg\n');
}
//now put our string into x
x.value = s;

//append x to our HTML
//(document.getElementsByTagName('head')[0]||document.getElementsByTagName('body')[0]).appendChild(x);
document.getElementsByTagName('body')[0].appendChild(x);
//-->
</SCRIPT>


Penjelasan

  • Windows XP memang sudah mengerti bahwa 9.jpg lebih kecil urutannya daripada 10.jpg, tapi, kalau Anda lihat di KDE / Gnome / Unity, file kalau diurut berdasarkan name, lebih sering 10.jpg keluar dulu daripada 9.jpg.
  • Kita perlu mem-pad, menambahkan leading zero pada nama filenya. Fungsi pad dicopy-paste dari website orang lain.
  • Kita menggunakan perintah ren untuk merename file.
  • Perhatikan kalau nama file ada spasinya, di DOS mesti diquote.
  • script diatas mendemokan bagaimana cara membuat sebuah elemen textarea, kemudian menambahkan isinya, lalu menambahkan ke body.



Comments