Este script redimensiona las imágenes de un directorio dado a la resolución indicada. Si no puede hacerse una conversión perfecta conservando las proporciones, ajusta la imagen al tamaño que más se ajusta al tamaño dado. Es necesario tener instalado el paquete imagemagick para poder utilizar el script.
El script recibe un único parámetro que es el directorio que contiene las imágenes. A partir de ahí actúa según las variables definidas al principio del script:
- PATRON: El tipo de imágenes, separadas por espacios, que se van a convertir.
- RES: La nueva resolución que se aplicará a las imágenes.
- DIR: El nombre del directorio donde se crearán las imagenes redimensionadas. Este directorio se creara dentro del que contiene las imágenes.
Script:
#!/bin/bash # Configuración de los parametros de conversion PATRON='*.jpg *.png' RES='96x96' DIR='miniaturas' # Comprobamos los parámetros if [ $# -ne 1 ]; then echo "Uso: $0 <directorio de imágenes>" exit 1 fi # Accedemos al directorio con las imágenes cd $1 || exit 1 # Creamos el directorio donde guardaremos las imágenes convertidas mkdir $DIR || exit 1 echo -e "nTipo de imágenes: $PATRON" echo -e "Nueva resolución: $RES" echo -e "Directorio de destino: `pwd`/$DIRn" # Una a una convertimos las imágenes del directorio for imagen in ${PATRON}; do if [ -f "${imagen}" ]; then echo -ne "t· $imagen -> " convert -size $RES -resize $RES $imagen $DIR/$imagen 2>/dev/null if [ $? -eq 0 ]; then echo "OK" else echo "ERROR" fi fi done
Elaborado por Nacx para ADSLAyuda.com