PDF merge

PDF's zusammenführen... ohne Reihenfolge.

 

#!/bin/bash
#
#script should merge several pdf in subfolders to 1
#
# 24.04.2013 - jast - first draft
#


# Variablen

DEST="/var/www/html/data/media/kompendium2.pdf"
ZIPOUT="/var/tmp/UNZIPED"
TMPDIR="/var/tmp/TMPDIR"
CACHE="/var/www/html/data/cache"


# function usage
usage() {
#echo "Usage `basename $0` <Filename .. usualy DocIT-Kompendium.pdf>" && exit 1
echo "Usage `basename $0` .... or run it from the CLI with the option bash -x `basename $0`" && exit 1
}


# Checks
#if [ -z ${DEST} ]; then
        #usage && exit 1
#fi

if [ ! -d ${TMPDIR} ] || [ ! -d ${ZIPOUT} ]; then
        mkdir -p ${TMPDIR} ${ZIPOUT}
else
        rm -rf ${TMPDIR} ${ZIPOUT} &&  mkdir -p ${TMPDIR} ${ZIPOUT}
fi

# find the zip... somewhere

cd ${CACHE}
if [ `pwd`  = ${CACHE} ]; then
        find ${CACHE} -iname `ls -trR |grep zip|tail -1` -size +8000k -exec cp {} ${ZIPOUT}/ \;
else
        echo "No zipfile found or cachefolder not present ... Aborting" && usage && exit 1
fi

# unzip
cd ${ZIPOUT}
if [ `pwd`  = ${ZIPOUT} ]; then
        unzip *.zip
else
        echo "Cannot unzip ... Aborting  " && usage && exit 1
fi

# copy pdf to flat folder
find ${ZIPOUT} -iname "*.pdf" -exec cp {} ${TMPDIR}/ \;

# create from tmpdir a pdf
cd ${TMPDIR}
if [ `pwd` = ${TMPDIR} ] ; then
        pdftk *.pdf cat output ${DEST}
else
        echo "Cannot merge pdf ... Aborting" && usage && exit 1
fi

# we're done here
exit 0

# maybe we should make a cleanup... mwaahaaa...