Home > pensieri, opere, omissioni > Una gallery statica

Una gallery statica

agosto 12, 2006

Quando non si ha la possibilità di utilizzare i servizi SQL ci si trova spesso a non poter utilizzare script dinamici per la creazione di gallery per il proprio sito.
Ma perché farlo a mano? C’è sempre bash!
Con questo script basta passare la directory dove si trovano le foto in jpg e creerà automaticamente il file gallery.htm che verrà così.

Script commentato

#!/bin/bash
cd $1; //apre la cartella passata
touch gallery.htm; //crea il file gallery.htm
echo "<html>" >> gallery.htm; //scrive <html> in gallery.htm
echo "<head><title>Norton's Gallery</title></head><body>" >> gallery.htm;
echo "<p align="center"><iframe name="\#foto" src="." height="360" width="480" marginwith=0 marginheight=0 frameborder=0 scrolling=no bordercolor=#000000 align=center>Il tuo browser non supporta iframes</iframe></p>" >> gallery.htm;
a=1; //inizializzazione della variabile che servirà come link alle foto
OLD_IFS="$IFS" //IFS deve essere cambiato in modo tare le for prenda anche i nomi con gli spazi
IFS="
"
for i in `ls | grep -e '\.[jpg|JPG]'`; //prende tutti i file jpg e JPG
do
convert -geometry 480x360 "$i" "$i" //convert fa parte del macchetto imagemagik, qui ridimensiona per 480x360 il file $i e lo salva come $i (ovvero lo sovrascrive)
echo "<a href=\"$i\" target="\#foto" title=\"$i\">$a</a>" >> gallery.htm; //crea il link
a=` expr $a + 1 `; //incrementa a
done
IFS="$OLD_IFS" //resetta IFS
echo "</body></html>" >> gallery.htm; //chiude il file gallery.htm

Naturalmente si rimanda alle guide di bash, di convert e di html.

Questo script non funziona con browser che non supportano iframe.

E’ uno script libero, ognuno può farne quel che vuole…e se lo migliora me lo faccia sapere🙂

(Si ringraziano tutti coloro che mi hanno aiutato a capire come farlo)

%d blogger cliccano Mi Piace per questo: