]> git.ipfire.org Git - thirdparty/bash.git/blame - tests/getopts7.sub
Bash-5.2-rc4 release
[thirdparty/bash.git] / tests / getopts7.sub
CommitLineData
8868edaf
CR
1# This program is free software: you can redistribute it and/or modify
2# it under the terms of the GNU General Public License as published by
3# the Free Software Foundation, either version 3 of the License, or
4# (at your option) any later version.
5#
6# This program is distributed in the hope that it will be useful,
7# but WITHOUT ANY WARRANTY; without even the implied warranty of
8# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9# GNU General Public License for more details.
10#
11# You should have received a copy of the GNU General Public License
12# along with this program. If not, see <http://www.gnu.org/licenses/>.
13#
726f6388
JA
14aflag=
15bflag=
16
d166f048 17while getopts :ab: opt-var "$@"
726f6388
JA
18do
19 case $name in
20 a) aflag=1 ;;
21 b) bflag=1
22 bval=$OPTARG;;
d166f048
JA
23 :) echo $0: error: option \`$OPTARG\' requires an argument
24 echo Usage: $0 [-a] [-b value] args
25 exit 2;;
26 ?) echo $0: error: illegal option character \`$OPTARG\'
27 echo Usage: $0 [-a] [-b value] args
726f6388
JA
28 exit 2;;
29 esac
30
31done
32
33if [ ! -z "$aflag" ] ; then echo -a specified ; fi
34if [ ! -z "$bflag" ] ; then echo -b $bval specified ; fi
35
36if [ "$OPTIND" -gt 1 ]
37then
38 shift $(( $OPTIND - 1 ))
39fi
40
41echo remaining args: "$*"
42
43exit 0