From d42f08caaed18dbef0d14528ad3c0a78cde35b90 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Tue, 7 Sep 2010 17:25:03 +0200 Subject: Add --help option; check number of parameters, check if input file exist. --- localvideowebencode | 40 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 36 insertions(+), 4 deletions(-) diff --git a/localvideowebencode b/localvideowebencode index cb4b2e1..1e4cc7e 100755 --- a/localvideowebencode +++ b/localvideowebencode @@ -9,19 +9,39 @@ set -e +PRG=$(basename "$0") + +showhelp() { + cat <&2 "$response" exit 1 } -PRG=$(basename "$0") - # parse cmdline options -TEMP="`getopt -s sh -o s:t: -l size:,title: -n "$PRG" -- "$@"`" || exit1 "Internal getopt error." +TEMP="`getopt -s sh -o hs:t: -l help,size:,title: -n "$PRG" -- "$@"`" || exit1 "Internal getopt error." eval set -- "$TEMP" while true ; do case "$1" in + -h|--help) showhelp; exit;; -s|--size) size="$2"; shift 2;; -t|--title) title="$2"; shift 2;; --) shift; break;; @@ -29,8 +49,20 @@ while true ; do esac done +if [ $# -eq 0 ]; then + showhelp + exit1 "Too few parameters!" +fi + +if [ $# -gt 1 ]; then + showhelp + exit1 "Too many parameters!" +fi + # input filename (mandatory) -infile="$1"; shift || exit1 "Input file missing!" +infile="$1"; shift +[ -e "$infile" ] || exit1 "Input file missing!" + filebase=$(echo "$infile" | perl -pe 's/\.[^.]*//') # output size in WIDTHxHEIGHT (mandatory) -- cgit v1.2.3