#!/bin/bash param='' filename='' dru='DEFAULT' usage="usage: mPrint [-ps / -pdf / -p Printer] filename" # Parameter auswerten if [ $# -eq 0 ] then echo $usage exit 0; elif [ $# -eq 1 ] then filename=$1 elif [ $# -eq 2 ] then case $1 in -ps) dru=PS ;; -pdf) dru=PDF ;; *) echo $usage exit 1 esac filename=$2 elif [ $# -eq 3 ] then if [ $1 != "-p" ] then echo $usage exit 1 fi dru=$2 filename=$3 fi # check file if [ ! -f $filename ] then echo "file $filename does not exist" exit 1 fi # build ps file psname=${filename#.*}.ps typ=`file -b $filename` if echo $typ | grep 'text' > /dev/null then recode utf-8..l1 <$filename >$filename.tmp enscript --lineprinter -p $psname $filename.tmp 2>/dev/null rm $filename.tmp elif echo $typ | grep 'PDF' > /dev/null then if [ $dru == "PS" ] then echo "cannot back convert to ps file" exit 1 elif [ $dru == pdf ] then exit 0 fi psname=$filename elif echo $typ | grep 'PS' > /dev/null then psname=$filename else echo 'Dateityp unbekannt' exit 1 fi # print/convert ps file case $dru in PS) # habe fertig ;; PDF) ps2pdf $psname rm $psname ;; DEFAULT) lp $psname ;; *) lp -d $dru $psname esac