aflag=
bflag=
while getopts ab:c:de name "$@"
do
case $name in
a) aflag=1 ;;
b) bflag=1
bval=$OPTARG;;
c) cflag=1
cval=$OPTARG ;;
d) dflag=1 ;;
e) eflag=1;;
?) echo Usage: $0 [-a] [-b value] [-c value] -[de] args
exit 2;;
esac
done
[ ! -z "$aflag" ] && echo -a specified
[ ! -z "$bflag" ] && echo -b $bval specified
[ ! -z "$cflag" ] && echo -c $cval specified
[ ! -z "$dflag" ] && echo -d specified
[ ! -z "$eflag" ] && { echo -n - ; echo e specified; }
exit 0