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:
parent
e658ccea60
commit
7c7a210ab8
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=213883
@ -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}
|
||||
|
@ -1,3 +1,8 @@
|
||||
-1-
|
||||
a
|
||||
-2-
|
||||
a
|
||||
No arg for -b option
|
||||
?
|
||||
-3-
|
||||
?
|
||||
|
Loading…
Reference in New Issue
Block a user