Per rinominare molti file contemporaneamente in una directory in linux si può utilizzare un semplice ciclo for:
for filename in *; do mv $filename filename_nuovo; done
In questo modo rinomina tutti i file (*) nella directory come filename_nuovo.
Per esepio se vogliamo aggiungere a tutti i file in una directory l’estensione .bak è sufficiente modificare così la riga:
for filename in *; do mv $filename $filename.bak ; done
Se invece si ha familiarità con le espressioni regolari di perl… allora diventa tutto semplice utilizzando il comando replace!
Alcuni esempi:
# Rimuove l'esetensione .bak ai file .bak rename 's/\.bak$//' *.bak # converte in minuscolo i nomi dei file rename 'y/A-Z/a-z/' *
Ricordatevi che esiste anche un simpatico parametro -n che simula e visualizza a video i file che verrebbero modificati. Una buona cosa per evitare problemi 🙂
Primo 🙂
sarebbe possibile eliminare dal nome file i caratteri strani tipo: * : |
?
ho fatto:
rename ‘|’ ‘-‘ *