1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-11-28 08:02:54 +00:00

Embellish this testcase a little bit to be more clear what the output is

and why.  The first case is correct usage which has but one correct output.
The 2nd and 3rd cases are incorrect usage in which the exact output is
not standardized and various shells give various allowable output.
This commit is contained in:
David E. O'Brien 2010-10-14 23:28:31 +00:00
parent e658ccea60
commit 7c7a210ab8
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=213883
2 changed files with 18 additions and 0 deletions

View File

@ -1,12 +1,25 @@
# $FreeBSD$
echo '-1-'
set -- -abc
getopts "ab:" OPTION
echo ${OPTION}
# In this case 'getopts' should realize that we have not provided the
# required argument for "-b".
# Note that Solaris 10's (UNIX 03) /usr/xpg4/bin/sh, /bin/sh, and /bin/ksh;
# ksh93 20090505; pdksh 5.2.14p2; mksh R39c; bash 4.1 PL7; and zsh 4.3.10.
# all recognize that "b" is missing its argument on the *first* iteration
# of 'getopts' and do not produce the "a" in $OPTION.
echo '-2-'
set -- -ab
getopts "ab:" OPTION
echo ${OPTION}
getopts "ab:" OPTION
echo ${OPTION}
# The 'shift' is aimed at causing an error.
echo '-3-'
shift 1
getopts "ab:" OPTION
echo ${OPTION}

View File

@ -1,3 +1,8 @@
-1-
a
-2-
a
No arg for -b option
?
-3-
?