Script BASH para Renombrar Archivos



Luego de un par de años sin escribir una línea en BASH, vuelvo para no perder la práctica. Tengo un montón de canciones en formato MP3 de Alí Primera (Cantor y Maestro Revolucionario Venezolano), pero todas denominadas de forma similar a 'TRACK 01 (01)', y como deseaba pasarlas al PS3 pero tenerlas medianamente ordenadas, fue la excusa ideal para el reencuentro.
Espero sea de utilidad a alguien más:

#!/bin/bash
clear
echo "+---------------------------------------------------------------------------+";
echo "|                         RENOMBRADOR DE ARCHIVOS                           |";
echo "|                        -------------------------                          |";
echo "| Script BASH para renombrar archivos y extensiones en el directorio actual |"
echo "+---------------------------------------------------------------------------+";
echo "                                                       .:kuMda:. 2010 GNU/GPL"
echo "Por favor, indique el Prefijo que deberán tener los archivos una vez sean renombrados."
read prefijo
echo "Ahora, ingrese la extensión que deberán tener los archivos a renombrar. Omita el signo punto '.'";
read extension;
echo "Usted ha definido el prefijo '$prefijo' y la extensión '.$extension'.";
if [ $extension != "" ] && [ $prefijo != "" ]
then
echo "A continuación se procederá a renombrar 'todos' los archivos en su directorio de extensión '.$extension'. ¿Indique si desea continuar\? Si: S, No: N.";
read desea;
if [ $desea = "S" ] || [ $desea = "s" ]
then
for archivos in *.$extension
do
((cont = cont + 1))
# se inicia el renombramiento
`rename 's/ //' *.$extension`
mv $archivos $prefijo"_"$cont.$extension

done
clear
echo "Listo, se han renombrado $cont archivos.";
echo "Hasta Luego...";
else
clear
echo "Hasta luego."
fi
else
clear
echo "+--------------------------> ERROR <-------------------------+";
echo "| Debe definir una extensión y no debe ser una cadena vacía! |"
echo "+------------------------------------------------------------+";
fi

Comentarios