Script: Convertir a JPG (Nautilus Script)

Todos los maestrillos tienen su librillo, yo como blogger los scripts de nautilus que más uso son «Convertir a JPG» y «Redimensionar imágenes», la finalidad es reducir el tamaño de las imágenes que se suben al blog. Aqui os demo mi script «convertir a jpg» que puede servir como base para crear otros. tiene cosas interesantes como usar ña variable «IFS» para poder procesar correctamente los archivos que contienen espacios. Para usarlo basta con darle permisos de ejecución y copiarlo a tu carpeta «$HOME/.gnome2/nautilus-scripts».


#!/bin/bash

#=======================================================================
# Convertir a JPG
#
# Script de Nautilus para convertir un grupo de imagenes a formato jpg
# Copiar a $HOME/.gnome2/nautilus-scripts/Imagenes 
#
#=======================================================================

# Calidad de la imagen JPG ajustala para tener mas o menos
CALIDAD="75"

# para comprobar si el tipo del fichero es imagen
check_type()
{
return `file "$1" | grep image | head -1 | wc -l`
}
#--------------------------------------------------------------

# para convertir a jpg
convertir_a_jpg()
{
# Recuperar el fichero
filename="$1"

# Comprobamos si es un directorio,si lo es, terminamos
if [ -d "$filename" ];
then
	echo "es un directorio."
else
	# en otro caso,
	# chequear el tipo de fichero (que sea imagen)
	if (! check_type "$filename")
	then
		echo "es una imagen"
						
		extension=${filename##*.}
		path_and_name=${filename%.*}
		
		echo "extension: $extension"
		echo "path&name: $path_and_name"
		
		if [ "$extension" == "jpg" ]
		then
			echo "ya es jpg no se convierte"
		else
			# si la extension es valida, ya usamos convert
			echo "Convirtiendo imagen [$filename] a jpg..."
			convert -quality $CALIDAD "$filename" "$path_and_name.jpg"		
		fi;
				
		
	fi
fi
}

# Redefinir variable IFS para poder usar ficheros con espacios
tmpIFS=$IFS 
IFS=$'\n'

if [ -z $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS ]; then
    NAUTILUS_SCRIPT_SELECTED_FILE_PATHS=$1
fi

# Para cada uno de los ficheros seleccionados
for ARCHIVE_FULLPATH in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
    
    NEWDIRNAME=${ARCHIVE_FULLPATH%.*}
    FILENAME=${ARCHIVE_FULLPATH##*/}
    NAME=${ARCHIVE_FULLPATH##*/.*}
    
    echo "* Selected: $NEWDIRNAME || $FILENAME || $NAME " | tee -a /tmp/nautilus_convertir_a_jpg.log
    # Y aqui ya hacemos la llamada para convertir el fichero a jpg
    convertir_a_jpg "$ARCHIVE_FULLPATH"

done

IFS=$tmpIFS;

8 Respuestas to “Script: Convertir a JPG (Nautilus Script)”


  1. 1 koxmoz septiembre 27, 2010 a las 12:57 pm

    solo una pregunta, nose mucho de programación pero en la linea 38 dice

    38| extension=${filename##*.}

    no toma el doble ## como comentario aunque lo coloree así, no??

    • 2 superpiwi septiembre 27, 2010 a las 2:44 pm

      es un patron para extraer la extension del fichero, no lo toma como comentario al estar incluido dentro de la variable ${variable}, pero por lo general si es indicador de comentario cuando esta al comienzo de una linea, y no necesariamente doble, el simple «#» es inicio de comentario ya.

  2. 4 fofo marzo 13, 2011 a las 6:53 am

    hola cree el scripts pero tengo el problema que no logro usarlo por mas que le de a convertir a jpg


  1. 1 Top de Extensiones para Nautilus « Ubuntu Life Trackback en septiembre 27, 2010 a las 6:07 pm
  2. 2 Top de Extensiones para Nautilus | Ayuda Linux Trackback en septiembre 27, 2010 a las 7:52 pm
  3. 3 Script: Convertir a JPG (Nautilus Script) | Ayuda Linux Trackback en septiembre 28, 2010 a las 7:16 am
  4. 4 Top de Extensiones para Nautilus en Ubuntu « Virtuazone's Blog Trackback en septiembre 28, 2010 a las 3:31 pm

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s







¿Es compatible tu equipo con Ubuntu?


( Muchos fondos de pantalla, aqui )

DESCARGATE SCIFI LIFE

365 Dias de Soledad
Me debes los sueños, las promesas y las noches rotas. Me debes la paz, la sonrisa y la esperanza robadas. Me debes la sangre, las lágrimas y el sudor vertido. Me debes las noches vacías, los abrazos anhelados. Me debes un beso de ajenjo de tu amarga boca.

The Ubuntu Counter Project - user number # 11961
Geo Visitors Map

Archivos

septiembre 2010
L M X J V S D
 12345
6789101112
13141516171819
20212223242526
27282930  

Blog Stats

  • 31.296.641 hits

A %d blogueros les gusta esto: