Permalänk
Medlem

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

Permalänk
Medlem

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

Permalänk
Medlem

#! /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