Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Apr 2006

bash-script

halloj

jag håller på att sätta upp ett galleri med hjälp av simpleviewer på min slackware 10.2 server. Allt fungerar men jag har omkring 600 bilder jag skulle vilja föra in i "gallery.xml"

den är av denna strukturen:

<?xml version="1.0" encoding="UTF-8"?>
<simpleviewerGallery maxImageWidth="480" maxImageHeight="480"
textColor="0xFFFFFF" frameColor="0xffffff" frameWidth="20"
stagePadding="40" thumbnailColumns="3" thumbnailRows="3"
navPosition="left" title="test-galleri" enableRightClickOpen="true"
backgroundImagePath="" imagePath="" thumbPath="">

<image>
<filename>201cvn00001.jpg</filename>
<caption>Caption 2</caption>
</image>
<image>
<filename>202cvn00002.jpg</filename>
<caption>Caption 3</caption>
</image>
</simpleviewerGallery>

och bilderna heter 001cvn00001.jpg - 576cvn00576.jpg

Det är för mycket bilder för att jag ska orka göra det för hand så om nån vänlig själ kan ge mig en hint om nåt shellscript av nåt slag så vore det guld

ubuntu 16.04

Trädvy Permalänk
Medlem
Plats
örebro
Registrerad
Aug 2005

kommandosträng i mappen med bilder:

echo '<?xml version="1.0" encoding="UTF-8"?> <simpleviewerGallery maxImageWidth="480" maxImageHeight="480" textColor="0xFFFFFF" frameColor="0xffffff" frameWidth="20" stagePadding="40" thumbnailColumns="3" thumbnailRows="3" navPosition="left" title="test-galleri" enableRightClickOpen="true" backgroundImagePath="" imagePath="" thumbPath="">'>gallery.xml; i=0; ls *.jpg| while read line; do echo -en '<image>\x0a<filename>'$line'</filename>\x0a<caption>Caption '; echo -n $i;echo -e '</caption>\x0a</image>';i=$[$i+1];done >>gallery.xml; echo '</simpleviewerGallery>'>>gallery.xml

$cat gallery.xml

(defmacro lisp-bootstrap (expr) expr)

Trädvy Permalänk
Medlem
Plats
::1
Registrerad
Jul 2003

#! /bin/sh #$1 är mappen där bilderna finns #$2 är utfilen echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\c " >> $2 echo "<simpleviewerGallery maxImageWidth=\"480\" maxImageHeight=\"480\"\c " >> $2 echo "textColor=\"0xFFFFFF\" frameColor=\"0xffffff\" frameWidth=\"20\"\c " >> $2 echo "stagePadding=\"40\" thumbnailColumns=\"3\" thumbnailRows=\"3\"\c " >> $2 echo "navPosition=\"left\" title=\"test-galleri\" enableRightClickOpen=\"true\"\c " >> $2 echo "backgroundImagePath=\"\" imagePath=\"\" thumbPath=\"\">" >> $2 Caption=1 for i in `ls $1` do echo "\t<image>" >> $2 echo "\t\t<filename>$i</filename>" >> $2 echo "\t\t<caption>Caption $Caption</caption>" >> $2 echo "\t</image>" >> $2 Caption=`expr $Caption + 1` done echo "</simpleviewerGallery>" >> $2