Skip to content

Instantly share code, notes, and snippets.

@relax-more
Created March 26, 2013 02:09
Show Gist options
  • Save relax-more/5242562 to your computer and use it in GitHub Desktop.
Save relax-more/5242562 to your computer and use it in GitHub Desktop.
[Shell] OptionParamをもらう+OptionParamを判定して必要な値が設定されていなければHelpMessageを表示する
while getopts f:t:r:h opt; do
case $opt in
f) FROM_DATE="${OPTARG}" ;;
t) TO_DATE="${OPTARG}" ;;
h) HELP="true" ;;
*) ERROR="true" ;;
esac
done
function help()
{
echo "Usage : `basename $0` -f {FROM_DATE} -t {TO_DATE} " 1>&2
echo " {FROM_DATE} : YYYYmmdd" 1>&2
echo " {TO_DATE} : YYYYmmdd" 1>&2
echo " ex) `basename $0` -f 20101001 -t 20102001" 1>&2
}
if [ "${HELP}" == "true" -o "${ERROR}" == "true" -o "${FROM_DATE}" == "" -o "${TO_DATE}" == "" ]; then
help
exit 1
fi
if [[ ! $FROM_DATE =~ '^([0-9]{8,8})$' ]] || [[ ! $TO_DATE =~ '^([0-9]{8,8})$' ]] ; then
help
exit 1
fi
# logic start
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment