Rename Banyak File dengan Regex
01 Apr 2021 · 2 min read
Di Linux, kita bisa rename banyak file dengan Regex.
Program yang digunakan adalah:
rename
prename
Install dulu program rename:
sudo apt install rename
Note: sebenarnya program rename
ada yang dari util-linux
dan File::Rename
(Perl),
kita akan pakai yang dari Perl.. karena dia support regex.
Coba baca issue ini:
Jika kamu menggunakan fedora, bisa pakai prename
.
Install dengan perintah:
sudo dnf install prename
Setelah itu masuk ke folder tempat semua file berada, lalu jalankan perintah rename dengan regex.
rename -n 's/<regex untuk search file>/<regex untuk replace>/' *.ext
Opsi -n
akan memberikan output dari hasil rename, ini berguna
untuk coba-coba regex-nya sebelum di rename.
Simbol s/
para regex berarti kita akan melakukan subtitusi atau replace.
Contoh:
list file sebagai berikut:
[Anime] Black Clover BD - 01.mkv
[Anime] Black Clover BD - 02.mkv
[Anime] Black Clover BD - 03.mkv
[Anime] Black Clover BD - 04.mkv
[Anime] Black Clover BD - 05.mkv
Kita ingin rename menjadi seperti ini:
Black Clover - 01.mkv
Black Clover - 02.mkv
Black Clover - 03.mkv
Black Clover - 04.mkv
Black Clover - 05.mkv
Maka perintahnya:
rename -n 's/(\[w+]) (Black Clover) BD - (\d.)/$2 - $3' *.mkv
Penjelasan tentang regex-nya bisa dicek di regexr.com/5prb7.
Hasil outputnya:
rename([Anime] Black Clover BD - 01.mkv, Black Clover - 01.mkv)
rename([Anime] Black Clover BD - 02.mkv, Black Clover - 02.mkv)
rename([Anime] Black Clover BD - 03.mkv, Black Clover - 03.mkv)
rename([Anime] Black Clover BD - 04.mkv, Black Clover - 04.mkv)
rename([Anime] Black Clover BD - 05.mkv, Black Clover - 05.mkv)
Jika sudah yakin, opsi -n
bisa dihapus untuk melakukan rename.
rename 's/(\[w+]) (Black Clover) BD - (\d)/$2 - $3' *.mkv
Selamat mencoba.