Rinomina file e directory utilizzando il terminale Linux

Suraj Joshi 12 aprile 2021
  1. Rinomina file e directory usando il comando mv
  2. Rinomina file e directory usando il comando rename
Rinomina file e directory utilizzando il terminale Linux

Possiamo rinominare file e directory con i comandi rename e mv nel terminale Linux. Il comando mv può rinominare solo un file alla volta, ma il comando rename può rinominare più file contemporaneamente.

Rinomina file e directory usando il comando mv

Il comando mv può rinominare file e directory. Viene anche utilizzato per spostare file e directory da una posizione a un’altra.

Sintassi del comando mv:

mv [OPTIONS] source destination

La source può essere uno o più file o directory e la destination è sempre un singolo file o directory.

Se abbiamo più file o directory come origine, la destinazione è sempre directory. In questo caso, tutti i file e le directory di origine vengono spostati nella directory di destinazione.

Se abbiamo un singolo file come origine e una directory come destinazione, il file di origine viene spostato nella directory di destinazione.

Per rinominare un file usando mv, entrambi i parametri di origine e di destinazione nel comando mv devono essere file.

mv helloworld.py main.py

Rinomina il file helloworld.py in main.py.

Possiamo anche rinominare in modo simile la directory.

mv Programs Python-Programs

Rinomina la directory Programs in Python-Programs.

Rinomina più file con il comando mv

Come sappiamo, il comando mv può rinominare solo un file alla volta. Potremmo usare i cicli for o while per rinominare più file.

for f in *.png; do 
    mv -- "$f" "${f%.png}.jpg"
done

Rinomina tutti i file nella directory corrente con un’estensione da .png a .jpg.

Rinomina file e directory usando il comando rename

Il comando rename è leggermente avanzato rispetto al comando mv e può essere utilizzato per rinominare più file in un unico passaggio.

Per installare la versione Perl del comando rename in Ubuntu e Debian, usa il comando:

sudo apt install rename

Per installare la versione Perl del comando rename in CentOS e Fedora, usa il comando:

sudo yum install prename

Per installare la versione Perl del comando rename in Arch Linux, usa il comando:

yay perl-rename ## or yaourt -S perl-rename

Sintassi del comando rename:

rename [options] 's/old/new/' files

Esempio: Rinomina file con il comando rename

rename 's/.png/.jpg/' *.png

Rinomina tutti i file .png nella directory corrente in .jpg.

Per stampare i nomi dei file rinominati, usiamo l’opzione -v nel comando rename.

rename -v 's/.jpg/.png/' *.jpg

Produzione:

1.jpg renamed as 1.png
bubbleheads.jpg renamed as bubbleheads.png
demo.jpg renamed as demo.png
hiss.jpg renamed as hiss.png
invoice.jpg renamed as invoice.png

Rinomina tutti i file .jpg nella directory corrente in .png e stampa ogni file rinominato nel terminale.

Esempio: convertire i nomi dei file in minuscolo

rename 'y/A-Z/a-z/' *

Converte tutti gli alfabeti del nome del file in maiuscolo nella directory corrente in minuscolo.

Esempio: convertire i nomi dei file in maiuscolo

rename 'y/a-z/A-Z/' *

Converte tutti gli alfabeti del nome del file in minuscolo nella directory corrente in maiuscolo.

Autore: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Articolo correlato - Linux Files and Directories