Mengganti nama banyak file dan direktori dengan mv perintah bisa menjadi proses yang membosankan karena melibatkan penulisan perintah yang rumit dengan pipa, loop, dan sebagainya.
Di sinilah rename perintah berguna. Itu mengganti nama file yang diberikan dengan mengganti ekspresi pencarian di namanya dengan pengganti yang ditentukan.
Dalam tutorial ini, kami akan menjelaskan cara menggunakan rename perintah untuk mengelompokkan rename file.
Memasang rename #
Ada dua versi rename perintah dengan sintaks dan fitur yang berbeda. Kami akan menggunakan versi Perl dari rename perintah.
Jika versi ini tidak diinstal pada sistem Anda, gunakan manajer paket distribusi Linux Anda untuk menginstalnya:
-
Ubuntu dan Debian
sudo apt updatesudo apt install rename -
CentOS dan Fedora
sudo yum install prename -
Linux Arch
yay perl-rename
Menggunakan rename #
Berikut ini adalah sintaks umum untuk rename perintah:
rename [OPTIONS] perlexpr files
rename perintah pada dasarnya adalah skrip Perl. Ini akan mengganti nama files yang diberikan sesuai dengan perlexpr yang ditentukan ekspresi reguler. Anda dapat membaca tentang ekspresi reguler Perl di sini.
Misalnya, perintah berikut akan mengubah ekstensi semua .css file ke .scss :
rename 's/.css/.scss/' *.css Mari kita jelaskan perintah lebih detail:
s/search_pattern/replacement/- Operator pengganti..css- Pola pencarian. Ini adalah argumen pertama dalam operator substitusi.renameperintah akan mencari pola ini dalam nama file yang diberikan dan jika ditemukan akan menggantinya dengan argumen pengganti..scss- Penggantian. Argumen kedua dalam operator substitusi.*.css- Semua file dengan ekstensi ".css". Karakter pengganti (*) adalah simbol yang digunakan untuk mewakili nol, satu atau lebih karakter.
Sebelum menjalankan perintah aktual dan mengganti nama file dan direktori, sebaiknya gunakan -n opsi yang akan melakukan "dry run" dan menunjukkan kepada Anda file apa yang akan diganti namanya:
rename -n 's/.css/.scss/' *.css Outputnya akan terlihat seperti ini:
rename(file-0.css, file-0.scss)
rename(file-1.css, file-1.scss)
rename(file-2.css, file-2.scss)
rename(file-3.css, file-3.scss)
rename(file-4.css, file-4.scss)
Secara default, rename perintah tidak menimpa file yang ada. Gunakan -f opsi yang memberitahu rename untuk menimpa file yang ada:
rename -f 's/.css/.scss/' *.css
Jika Anda ingin rename untuk mencetak nama file yang berhasil diubah namanya, gunakan -v opsi (verbose):
rename -v 's/.css/.scss/' *.css file-0.css renamed as file-0.scss
file-1.css renamed as file-1.scss
file-2.css renamed as file-2.scss
file-3.css renamed as file-3.scss
file-4.css renamed as file-4.scss
rename Contoh #
Berikut adalah beberapa contoh umum tentang cara menggunakan perintah rename:
Ganti spasi pada nama file dengan garis bawah #
rename 'y/ /_/' * Mengubah nama file menjadi huruf kecil #
rename 'y/A-Z/a-z/' * Mengubah nama file menjadi huruf besar #
rename 'y/a-z/A-Z/' * Hapus .bak dari nama file #
rename 's/\.bak$//' *.bak Ganti nama .jpeg dan .JPG nama file menjadi .jpg #
rename 's/\.jpe?g$/.jpg/i' * Kesimpulan #
rename perintah memungkinkan Anda untuk mengganti nama beberapa file sekaligus, menggunakan ekspresi reguler Perl.
Jika Anda memiliki pertanyaan atau masukan, jangan ragu untuk memberikan komentar.