Minggu, 31 Mei 2015

Mengganti nama file sesuai tanggal

Pada pemotretan menggunakan kamera digital atau telepon genggam, kita menghadapi sejumlah tata cara penamaan berkas, DSCxxx.jpg atau IMGxxxx.jpg. Hal ini sering kali menyulitkanjika penamaan tersebut serial. Perlu penamaan unik, dengan menymatkan tanggal di dalamnya.

Ada dua macam pembuatan tanggal/ EXIF:
1. Sesuai tanggal pembuatan: yang direkomendasikan

for f in *.jpg
do
    mv -n "$f" "$(exiftool -d "%Y%m%d_%H%M%S" -CreateDate "$f" | awk '{print $4".jpg"}')"
done

for f in *.JPG; do     mv -n "$f" "$(exiftool -d "%Y%m%d_%H%M%S" -CreateDate "$f" | awk '{print $4".jpg"}')"; done

-rwxr----- 1 setyo setyo 1454016 May 28 23:26 20150519_135220.jpg
-rwxr----- 1 setyo setyo 1207348 May 28 23:26 20150519_135442.jpg
-rwxr----- 1 setyo setyo 2208176 May 28 23:27 20150519_142700.jpg
-rwxr----- 1 setyo setyo 1518320 May 28 23:29 20150527_101642.jpg




2. Sesuai tanggal pada PC.

for f in *.jpg
do
    mv -n "$f" "$(date -r "$f" +"%Y%m%d_%H%M%S").jpg"
done

Dicoba di konsole:

setyo@debian:/media/Data1/7_FOTO-FOTO/2015/coba2$ for f in *.jpg
> do
> mv -n "$f" "$(date -r "$f" +"%Y%m%d_%H%M%S").jpg"
> done

Hasilnya adalah:

setyo@debian:/media/Data1/7_FOTO-FOTO/2015/coba2$ ls -l
total 7064
-rwxr----- 1 setyo setyo 1454016 May 28 23:26 20150528_232637.jpg
-rwxr----- 1 setyo setyo 1207348 May 28 23:26 20150528_232659.jpg
-rwxr----- 1 setyo setyo 2208176 May 28 23:27 20150528_232700.jpg
-rwxr----- 1 setyo setyo 1518320 May 28 23:29 20150528_232912.jpg
-rwxr----- 1 setyo setyo  469439 May 31 23:00 20150531_230040.jpg
-rwxr----- 1 setyo setyo  212392 May 31 23:00 20150531_230048.jpg
-rwxr----- 1 setyo setyo   20311 May 31 23:00 IMG-20150531-WA0002.jpg
-rwxr----- 1 setyo setyo  131105 May 31 23:00 IMG-20150531-WA0007.jpg


--

Rekomendasi:
Lakukan pada seluruh folder.

Langkah 1: Membuat nama berdasar waktu sistem.


for file in `ls -1 *.jpg`; do name=`stat -c %y $file | awk -F"." '{ print $1 }' | sed -e "s/\-//g" -e "s/\://g" -e "s/[ ]/_/g"`.jpg; mv $file $name; doneKemudian,
Langkah 2: Membuat nama berdasarkan waktu pembuatan.

for f in *.JPG; do     mv -n "$f" "$(exiftool -d "%Y%m%d_%H%M%S" -CreateDate "$f" | awk '{print $4".jpg"}')"; done


Atau dengan varian yang lebih baik:

for f in *.JPG; do     mv -n "$f" "$(exiftool -d "FOTO-%Y%m%d_%H%M%S" -CreateDate "$f" | awk '{print $4".jpg"}')"; done

Yakni dengan mnambahkan "FOTO-" sebagai awalan semua nama berkas.

Tidak ada komentar:

Posting Komentar