Du ser en gammel version af denne side. Se den nuværende version.

Sammenlign med nuværende Vis sidehistorik

« Forrige Version 16 Næste »

This script travles a directory structure and creates WIKI markup (suitable for Confluence versions lower that 4.0).

Several Macros are neede for the final page to be displayed correctly. See User Macros

As this injects data directly into the MySQL database, a Tomcat restart is needed afterwards

Is not Confluence 4 compatible

Executing the script:

./updateGallery.sh "FamilieBilleder" 28000 yes|no eGrep

Parameters:

FamilieBilleder

is the path to be traveled (this is /data/images/FamilieBilleder) for my installation

28000

is Id for the Confluence page needed to be updated

yes|no

is if a TOC markup is inserted

eGrep

is an optional RegEx string for fine-picking from the Directory structure

Scriptets source:

#!/bin/bash

html=""
IFS=$(echo -en "\n\b")

# Arguments

Dir=$1
Id=$2
MakeToc=$3
GrepFor=$4

# Check Arguments

if [ $# -lt 3 ]
then

	echo "There are not at least 3 Arguments: Dir ArticleId yes/no"
	exit 0
fi

if [ Dir == "" ]
then

	echo "Argument 1 is empty"
	exit 0
fi

if [ ! -d /data/images/$Dir ]
then

	echo "Argument 1 Dir: $Dir does not exist"
	exit 0
fi


cd /data/images/"$Dir"

for file in `find . -type d | grep -v "thumbs" | grep -v "cache" | egrep -i "$GrepFor" | sort`
do
	NumOfPics=`ls -t "$file" | egrep -i "\.(jpg|gif|png|bmp)$" | wc -l`

	if [ $NumOfPics -gt 0 ]
	then

		file=$(echo "$file"|sed 's/\.\///g')
		html="$html\\nh1. $file\\n{go-top}\\n"
		group=$file

		for image in `ls "$file" | egrep -i "\.(jpg|gif|png|bmp)$"`
		do
			file2=$(echo "$file"|sed 's/ /%20/g')
			html="$html\\n{me-image:path=$Dir/$file2/|image=$image|group=$group}"

		done

		html="$html\\n"

	fi

#	for movie in `find "$file"/ -maxdepth 1 -type f | grep -v thumbs | egrep -i "\.(bobsos|flv)$" | sort`
#	do

#		html="$html {me-video:/images/$Dir/$movie}"

#	done

done

if [ $MakeToc == "no" ]
then

	sql="UPDATE BODYCONTENT set body='{include-lightbox}\\n{make-top}\\n$html' where contentid=$Id"
else

	sql="UPDATE BODYCONTENT set body='{include-lightbox}\\n{make-top}\\n{toc}\\n$html' where contentid=$Id"

fi

echo "SET NAMES 'utf8';$sql" > /tmp/insert.sql
#echo "SET NAMES 'utf8';$sql"

mysql --user=cadmin --password=******** confluence < /tmp/insert.sql
rm /tmp/insert.sql

This is a sample output for the script:

{include-lightbox}
{make-top}
{toc}

h1. 2 x Fødselsdag 03-09-2011
{go-top}

{me-image:path=FamilieBilleder/2011/2%20x%20Fødselsdag%2003-09-2011/|image=CIMG2034.JPG|group=2 x Fødselsdag 03-09-2011}
{me-image:path=FamilieBilleder/2011/2%20x%20Fødselsdag%2003-09-2011/|image=CIMG2035.JPG|group=2 x Fødselsdag 03-09-2011}
{me-image:path=FamilieBilleder/2011/2%20x%20Fødselsdag%2003-09-2011/|image=CIMG2036.JPG|group=2 x Fødselsdag 03-09-2011}
{me-image:path=FamilieBilleder/2011/2%20x%20Fødselsdag%2003-09-2011/|image=CIMG2037.JPG|group=2 x Fødselsdag 03-09-2011}
{me-image:path=FamilieBilleder/2011/2%20x%20Fødselsdag%2003-09-2011/|image=CIMG2038.JPG|group=2 x Fødselsdag 03-09-2011}
{me-image:path=FamilieBilleder/2011/2%20x%20Fødselsdag%2003-09-2011/|image=CIMG2039.JPG|group=2 x Fødselsdag 03-09-2011}

h1. Afslapning 24-07-2011
{go-top}
  • Ingen etiketter