01 | #!/bin/bash |
02 |
03 | #==================================================== |
04 | # Convertir a JPG |
05 | # |
06 | # Script de Nautilus para convertir un grupo de imagenes a formato jpg |
07 | # Copiar a $HOME/.gnome2/nautilus-scripts/Imagenes |
08 | # |
09 | #==================================================== |
10 |
11 | # Calidad de la imagen JPG ajustala para tener mas o menos |
12 | CALIDAD="75" |
13 |
14 | # para comprobar si el tipo del fichero es imagen |
15 | check_type() |
16 | { |
17 | return `file "$1" | grep image | head -1 | wc -l` |
18 | } |
19 | #-------------------------------------------------------------- |
20 |
21 | # para convertir a jpg |
22 | convertir_a_jpg() |
23 | { |
24 | # Recuperar el fichero |
25 | filename="$1" |
26 |
27 | # Comprobamos si es un directorio,si lo es, terminamos |
28 | if [ -d "$filename" ]; |
29 | then |
30 | echo "es un directorio." |
31 | else |
32 | # en otro caso, |
33 | # chequear el tipo de fichero (que sea imagen) |
34 | if (! check_type "$filename") |
35 | then |
36 | echo "es una imagen" |
37 |
38 | extension=${filename##*.} |
39 | path_and_name=${filename%.*} |
40 |
41 | echo "extension: $extension" |
42 | echo "path&name: $path_and_name" |
43 |
44 | if [ "$extension" == "jpg" ] |
45 | then |
46 | echo "ya es jpg no se convierte" |
47 | else |
48 | # si la extension es valida, ya usamos convert |
49 | echo "Convirtiendo imagen [$filename] a jpg..." |
50 | convert -quality $CALIDAD "$filename" "$path_and_name.jpg" |
51 | fi; |
52 |
53 | fi |
54 | fi |
55 | } |
56 |
57 | # Redefinir variable IFS para poder usar ficheros con espacios |
58 | tmpIFS=$IFS |
59 | IFS=$'\n' |
60 |
61 | if [ -z $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS ]; then |
62 | NAUTILUS_SCRIPT_SELECTED_FILE_PATHS=$1 |
63 | fi |
64 |
65 | # Para cada uno de los ficheros seleccionados |
66 | for ARCHIVE_FULLPATH in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do |
67 |
68 | NEWDIRNAME=${ARCHIVE_FULLPATH%.*} |
69 | FILENAME=${ARCHIVE_FULLPATH##*/} |
70 | NAME=${ARCHIVE_FULLPATH##*/.*} |
71 |
72 | echo "* Selected: $NEWDIRNAME || $FILENAME || $NAME " | tee -a /tmp/nautilus_convertir_a_jpg.log |
73 | # Y aqui ya hacemos la llamada para convertir el fichero a jpg |
74 | convertir_a_jpg "$ARCHIVE_FULLPATH" |
75 |
76 | done |
77 |
78 | IFS=$tmpIFS; |
No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.