Barbacoa los Domingos

domingo, enero 20, 2008

 

Renombrando archivos múltiples


Este fin de semana surgió un problema por aquí: tenía que cambiar de formato cientos de imágenes en .wmf a .png, iba a usar mogrify pero aún así era una lata hacerlo uno por uno. Se me ocurrió hace un pequeño script con un while (que se me perdió por lo que no voy a poder mostrar lo que hize).

Todo salió bien, incluso lo modifiqué para que entrara en las carpetas, viera si tenía archivos .wmf y los convirtiera a png. Ese fue mi primer script en meses.

Uno de los problemas que tuve (y no pude resolver en el momento) fue poder manejar espacios en los archivos, hoy me di cuenta lo que debí haber hecho: poner debajo de #/bin/bash lo siguiente:
IFS=$'\n'
Entre ayer y hoy hize un script para renombrar N cantidad de archivos en una carpeta, todo en bash scripting. Esto es algo que en windows se puede hacer sin problema, me sorprende que no venga como opción ya puesta en nautilus.

#!/bin/bash

# Manejar correctamente espacio
IFS=$'\n'

echo Escribe el Path
read Path

if [ -d $Path ]
then
cd $Path

echo Prefijo del nuevo nombre
read PREFIJO

echo Extension de los archivos
read EXTENSION

ARCHIVOS=(`ls`)

for (( i = 0; i < "${#ARCHIVOS[@]}"; i++ ))
do
mv -f "${ARCHIVOS[$i]}" $PREFIJO$i$EXTENSION
echo "Renombrando archivo ${ARCHIVOS[$i]}"

done

else

echo "El directorio $Path no existe."
echo "Saliendo"
exit 0
fi


Puede ser útil cuando importas fotos de tus vacaciones en el chorrito y quieres quitar los molestos IMG000.jpg.

Cabe mencionar que tenía muchísimo sin hacer nada de eso y que mis soluciones (como la de la extensión) son muy tontas pero me hace lo que quiero. Supongo que no está mal para volver a tomar ritmo. Siéntanse libres de usarlo y mejorarlo.

Para poder usarlo hay que hacerlo ejectubale con chmod +x.

Salud

Comentarios: Publicar un comentario

Suscribirse a Comentarios de la entrada [Atom]





<< Página Principal

Archivos

diciembre 2007   enero 2008   febrero 2008   marzo 2008   mayo 2008   marzo 2009  

This page is powered by Blogger. Isn't yours?

Suscribirse a Entradas [Atom]