#! /bin/sh #================================================================ # estppthtml # Strip a file of MS-PowerPoint and extract its text as HTML. #================================================================ # set variables LANG=C ; export LANG LC_ALL=C ; export LC_ALL progname="estppthtml" tmpfile="/tmp/$progname-$$.ppt" nulldev="/dev/null" infile="$1" outfile="$2" # show help message if [ "$1" = "--help" ] then printf 'Strip a file of MS-PowerPoint and extract its text as HTML.\n' printf '\n' printf 'Usage:\n' printf ' %s [infile] [outfile]\n' "$progname" printf ' estindex register -xsuf .ppt \\\n' printf ' application/vnd.ms-powerpoint %s casket\n' "$progname" printf '\n' exit 0 fi # function to remove the temporary file tmpclean(){ rm -rf "$tmpfile" } # function to create the temporary file for input output(){ if [ -z "$outfile" ] then cat else cat >> "$outfile" fi } # set the exit trap trap tmpclean 1 2 3 13 15 # check the input file existence if [ -n "$infile" ] && [ ! -f "$infile" ] then printf '%s: %s: no such file\n' "$progname" "$infile" exit 1 fi # create the temporary file if [ -z "$infile" ] then cat > "$tmpfile" infile="$tmpfile" fi # output the result ppthtml "$infile" 2> "$nulldev" | iconv -f UTF-8 -t UTF-8 -c | awk ' BEGIN { lnum = 0 } { gsub(/