GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Converti i nomi dei file in minuscolo tramite la riga di comando di Ubuntu

Mentre lavori con Linux, potresti imbatterti in alcune utilità e app che funzionano solo con nomi di file in minuscolo. Di solito non salviamo i file in questo formato e potrebbe essere necessario cercare una soluzione alternativa che converta ricorsivamente tutti i nomi di file in una cartella in minuscolo. In questo articolo, ti mostreremo due modi per convertire in minuscolo tutti i nomi di file e cartelle in un determinato percorso, semplicemente tramite la riga di comando.

Abbiamo eseguito i comandi e le procedure menzionati in questo articolo su un sistema Ubuntu 18.04 LTS.

Ecco come puoi elencare il contenuto della tua cartella usando il comando trova:

$ trova [nome_directory] -profondità

La mia cartella Download, che userò come esempio per questo articolo, contiene tutti i file che iniziano con lettere maiuscole e ne contiene anche alcuni tra i nomi.

$ find Downloads -depth

Metodo 1:utilizzo del comando rinomina

In questo metodo, utilizzeremo i comandi Trova, Xargs e rinomina di Ubuntu per rinominare in modo ricorsivo tutti i file/cartelle in una determinata directory.

Apri la riga di comando di Ubuntu, il Terminale, tramite la ricerca in Avvio applicazioni o la scorciatoia Ctrl+Alt+T.

Ecco la sintassi del comando che utilizzerai:

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

Se non hai il comando rename installato sul tuo sistema, potresti ricevere un errore quando esegui il comando precedente. Puoi installare rename su Ubuntu tramite il seguente comando apt-get:

$ sudo apt-get install rename

Userò il seguente comando per convertire i nomi dei file in minuscolo nella mia directory Download:

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

Quando ho elencato di nuovo il contenuto della directory, sono stato in grado di vedere tutti i nomi di file convertiti in minuscolo come segue:

Metodo 2:utilizzo di uno script per rinominare i file

In questo metodo, utilizzeremo uno script bash che utilizza i comandi find e mv per rinominare in modo ricorsivo i nomi di file e cartelle di una directory, incluso il nome della directory stessa.

Apri l'applicazione Terminale e spostati nella cartella bin come segue:

$ cd ~bin

Ora apri un nuovo file di script in uno dei tuoi editor di testo preferiti. Useremo l'editor nano per aprire un file di script vuoto con il nome di lowercase_filenames.sh

$ sudo nano lowercase_filenames.sh

In quel file vuoto, aggiungi il seguente script.

#!/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
exit 0

Suggerimento: Invece di digitare l'intero script nel tuo file bash, puoi copiarlo da qui e incollarlo nel Terminale usando Ctrl+Maiusc+V o usando l'opzione Incolla dal menu di scelta rapida.

Ecco come apparirà il tuo file:

Ora, esci dal file tramite la scorciatoia Ctrl+X e salva il file su "Salva buffer modificato?" prompt digitando Y e quindi premendo invio.

Per rendere questo file uno script eseguibile, esegui il seguente comando nel tuo Terminale:

$ sudo chmod +x lowercase_filenames.sh

Ora sei pronto per utilizzare lo script su qualsiasi cartella.

Quando eseguo lo script nella mia cartella Download, vedo tutti i nomi di file e sottocartelle convertiti in minuscolo come segue:

Quindi, questi erano i due modi attraverso i quali puoi rinominare i nomi dei file in tutte le lettere minuscole in modo che l'applicazione che stai utilizzando non manchi di riconoscere i nomi dei file maiuscoli.


Ubuntu
  1. Come aprire facilmente un file PDF dalla riga di comando in Ubuntu

  2. Scarica un file su Ubuntu utilizzando la riga di comando sul sistema Ubuntu 20.04

  3. Come convertire un file Excel in un file Calc dalla riga di comando?

  4. Ripristino di backup non riuscito Ubuntu 16.04?

  5. Alternativa alla riga di comando SSH da Ubuntu

Personalizzazioni della GUI di GNOME tramite la riga di comando di Ubuntu

Rimozione batch di spazi nei nomi di file tramite la riga di comando di Ubuntu

Come scaricare un file su Ubuntu Linux usando la riga di comando

3 modi per riavviare Ubuntu tramite la riga di comando

Aggiorna Ubuntu 18.04 a Ubuntu 19.04 direttamente dalla riga di comando

Aggiorna Ubuntu 18.04 a Ubuntu 19.10 direttamente dalla riga di comando