From 9e222c3d09001413dac2fb8a659c6fc378caea0f Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Sun, 26 Feb 2012 20:01:22 +0100 Subject: Add usage and version functions --- ponysay | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/ponysay b/ponysay index 5d6d2c7..9b7c2a7 100755 --- a/ponysay +++ b/ponysay @@ -1,23 +1,36 @@ #!/usr/bin/env bash -# Ponies use UTF-8 drawing characters. Prevent a Perl warning. -export PERL_UNICODE=S - +version=0.4 SYSTEMPONIES=/usr/share/ponies HOMEPONIES="${HOME}/.ponies" +pony= cmd=cowsay [[ ${0} == *ponythink ]] && cmd=cowthink -pony= +version() { + echo "ponysay v$version" +} + +usage() { + version + echo + echo "Usage:" + echo "${0##*/} [options]" + echo + echo "Options:" + echo " -v Show version and exit" + echo " -h Show this help and exit" + echo " -f[name] Select a pony (Either a filename or a pony name)" +} while getopts f:hv OPT do case ${OPT} in - v) echo "ponysay v0.4" ; exit;; - h) echo "-v for version, -h for this, -f to specify a ponyfile. It'll choose a random ponyfile if no argument is given." ; exit;; + v) version; exit ;; + h) usage; exit ;; f) pony=$OPTARG ;; - \?) echo "DERP"; exit;; + \?) usage; exit 1 ;; esac done @@ -41,4 +54,7 @@ if [[ ! -f $pony ]]; then pony="${ponies[$RANDOM%${#ponies[@]}]}" fi +# Ponies use UTF-8 drawing characters. Prevent a Perl warning. +export PERL_UNICODE=S + exec "$cmd" -f "$pony" -- cgit