Ridurre Jpeg in modalità grafica

#!/bin/bash
# Questo script presuppone che siano installati i pacchetti Xdialog e imagemagick
 
function singolo
{
mkdir $HOME/small 2> /dev/null
Xdialog --fselect "Seleziona il file da ridurre" 0 0 "$HOME" 2> /tmp/file.$$
filedaconv=`cat /tmp/file.$$`
convert -geometry $taglia $filedaconv "$HOME/small/"`basename $filedaconv`
rm -f /tmp/file.$$
}
 
function multiplo
{
Xdialog --dselect "Seleziona la dir dove trovo i files da ridurre" 0 0 "$HOME" 2> /tmp/dir.$$
dirdaconv=`cat /tmp/dir.$$`
mkdir $HOME/small 2> /dev/null
cd $dirdaconv
for i in *.jpg
do convert -geometry $taglia $i $HOME/small/$i
done
 
rm -f /tmp/dir.$$
 
}
 
#######################################################################################################
# Lo script inizia di qui. #
#######################################################################################################
 
Xdialog --radiolist "Vuoi ridurre un singolo file o tutti i files contenuti in una directory?" 0 0 0 1 singolo on 2 multiplo off 2> /tmp/menu.$$
if [ "$?" == "1" ]  ; then exit ; fi
 
scelta=`cat /tmp/menu.$$`
 
Xdialog --rangebox "Quale percentuale di riduzione vuoi?" 0 0 0 100 50 2> /tmp/taglia.$$
if [ "$?" == "1" ]  ; then exit ; fi
 
taglia=`cat /tmp/taglia.$$`
rm -f /tmp/taglia.$$
taglia=$taglia"%x"$taglia"%"
echo $taglia
 
case $scelta in
1)
singolo
;;
2)
multiplo
;;
esac
rm -f /tmp/menu.$$
 
#Questo script è stato realizzato da Domenico e Lucio mentre prendevano il the. Lorenzo stava dormendo.
#Viene rilasciato in gpl e se non vi mettete di impegno per aumentare il numero di script a disposizione siete dei veri puzzoni !!