]> git.ipfire.org Git - thirdparty/bash.git/blob - tests/getopts3.sub
Bash-5.2-rc4 release
[thirdparty/bash.git] / tests / getopts3.sub
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 #
14 aflag=
15 bflag=
16
17 while getopts ab: name -a -b 1 -a -a -a -b 5 -b 3 -a one two three four five
18 do
19 case $name in
20 a) aflag=1 ;;
21 b) bflag=1
22 bval=$OPTARG;;
23 ?) echo Usage: $0 [-a] [-b value] args
24 exit 2;;
25 esac
26
27 done
28
29 if [ ! -z "$aflag" ] ; then echo -a specified ; fi
30 if [ ! -z "$bflag" ] ; then echo -b $bval specified ; fi
31
32 set -- -a -b 1 -a -a -a -b 5 -b 3 -a one two three four five
33 if [ "$OPTIND" -gt 1 ]
34 then
35 shift $(( $OPTIND - 1 ))
36 fi
37
38 echo remaining args: "$*"
39
40 exit 0