getopts2.sub   [plain text]


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