aflag= | |
bflag= | |
while getopts ab: name -a -b 1 -a -a -a -b 5 -b 3 -a one two three four five | |
do | |
case $name in | |
a) aflag=1 ;; | |
b) bflag=1 | |
bval=$OPTARG;; | |
?) echo Usage: $0 [-a] [-b value] args | |
exit 2;; | |
esac | |
done | |
if [ ! -z "$aflag" ] ; then echo -a specified ; fi | |
if [ ! -z "$bflag" ] ; then echo -b $bval specified ; fi | |
set -- -a -b 1 -a -a -a -b 5 -b 3 -a one two three four five | |
if [ "$OPTIND" -gt 1 ] | |
then | |
shift $(( $OPTIND - 1 )) | |
fi | |
echo remaining args: "$*" | |
exit 0 |