Cara Mengganti Semua File Di Linux Menjadi Huruf Kecil

Panduan ini akan menunjukkan cara mengubah nama semua file dan direktori menjadi huruf kecil di Linux. Ada beberapa cara untuk melakukan pergantian nama, tetapi kami akan menjelaskan dua metode yang paling efisien dan paling banyak orang menggunakannya. Untuk tujuan panduan ini, kami telah menggunakan direktori bernama Buycloud :

Baca Juga: 11 Perintah Untuk Menemukan Info Akun Pengguna Di Linux

Untuk cek struktur file bisa menggunakan perintah dibawah ini :

# find Buycloud -depth

Menggunakan find, xargs

rename adalah baris perintah sederhana untuk mengganti nama beberapa file sekaligus di Linux. Anda dapat menggunakannya bersama dengan find utility untuk mengganti nama semua file atau subdirektori dalam direktori tertentu menjadi huruf kecil sebagai berikut:

$ find Buycloud -depth | xargs -n 1 rename -v 's/(.*)\/([^\/]*)/$1\/\L$2/' {} \;

Penjelasan opsi yang digunakan dalam perintah di atas.

  • -depth – daftar isi setiap direktori sebelum direktori itu sendiri.
  • -n 1– menginstruksikan xargs untuk menggunakan paling banyak satu argumen per baris perintah dari find output.

Cara alternatif lain menggunakan perintah find dan mv dalam skrip seperti yang dijelaskan di bawah ini.

$ cd ~ / bin
$ vi rename-files.sh

Kemudian tambahkan kode di bawah ini di dalamnya.

#!/bin/bash
#print usage 
if [ -z $1 ];then
        echo "Usage :$(basename $0) parent-directory"
        exit 1
fi

#process all subdirectories and files in parent directory
all="$(find $1 -depth)"



for name in ${all}; do
        #set new name in lower case for files and directories
        new_name="$(dirname "${name}")/$(basename "${name}" | tr '[A-Z]' '[a-z]')"

        #check if new name already exists
        if [ "${name}" != "${new_name}" ]; then
                [ ! -e "${new_name}" ] && mv -T "${name}" "${new_name}"; echo "${name} was renamed to ${new_name}" || echo "${name} wasn't renamed!"
        fi
done

echo
echo
#list directories and file new names in lowercase
echo "Directories and files with new names in lowercase letters"
find $(echo $1 | tr 'A-Z' 'a-z') -depth

exit 0

Simpan dan tutup file, lalu buat skrip dibawah ini dan jalankan:

$ chmod +x rename-files.sh
$ rename-files.sh Buycloud     #Specify Directory Name

Itu cara sederhana mengganti nama seluruh file, jika ada trik lain bisa anda tambahkan di kolom komentar.