spirofilter (807B)
1 #!/bin/sh 2 3 tmpfile="$(mktemp)" 4 spirometrydb="/home/david/share/spirometry" 5 6 datetime="$(date +%Y-%m-%d-%H-%M-%S)" 7 if [ $# -gt 0 ]; 8 then 9 infile="$1" 10 case "${infile}" in 11 /dev/rfcomm*) 12 stty -F "${infile}" raw -echo -echoe -echok 13 ;; 14 *) 15 datetime="$(echo $infile \ 16 | cut -d- -f 2- \ 17 | cut -d'.' -f 1)" 18 ;; 19 esac 20 else 21 infile="/dev/stdin" 22 fi 23 24 cat "${infile}" > "${tmpfile}" 25 dbpath="${spirometrydb}" 26 cd "${dbpath}" 27 outfile="spirometry-$(cat "${tmpfile}" \ 28 | tr -d '\r' \ 29 | iconv -f iso8859-1 -t utf-8 \ 30 | grep -a "^NAME" \ 31 | sed 's,NAME \([^ ]*\)[ ]*\([^ ]*\)[ ]*#ID \([0-9]*\)[ ]*,\1-\2-\3,' \ 32 | sed 's, ,_,g; s,/,_,g;')-${datetime}.pcl" 33 mv "${tmpfile}" "${outfile}" 2>/dev/null 34 chown david:david "${outfile}" 2>/dev/null 35 36 cat "${outfile}" \ 37 | sed '/Daten von spirolab III Ver/d' \ 38 | lpr 39