72 lines
1.6 KiB
Bash
Executable File
72 lines
1.6 KiB
Bash
Executable File
|
|
#
|
|
# Copyright (c) 1984,1985,1986,1987,1988,1989,1990 AT&T
|
|
# All Rights Reserved
|
|
#
|
|
# THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T.
|
|
# The copyright notice above does not evidence any
|
|
# actual or intended publication of such source code.
|
|
#
|
|
|
|
function err_exit
|
|
{
|
|
print -u2 -n "\t"
|
|
print -u2 -r $Command: "$@"
|
|
let Errors+=1
|
|
}
|
|
|
|
Command=$0
|
|
integer Errors=0
|
|
base=/home/dgk/foo//bar
|
|
string1=$base/abcabcabc
|
|
if [[ ${string1%*zzz*} != "$string1" ]]
|
|
then err_exit "string1%*zzz*"
|
|
fi
|
|
if [[ ${string1%%*zzz*} != "$string1" ]]
|
|
then err_exit "string1%%*zzz*"
|
|
fi
|
|
if [[ ${string1#*zzz*} != "$string1" ]]
|
|
then err_exit "string1#*zzz*"
|
|
fi
|
|
if [[ ${string1##*zzz*} != "$string1" ]]
|
|
then err_exit "string1##*zzz*"
|
|
fi
|
|
if [[ ${string1%+(abc)} != "$base/abcabc" ]]
|
|
then err_exit "string1%+(abc)"
|
|
fi
|
|
if [[ ${string1%%+(abc)} != "$base/" ]]
|
|
then err_exit "string1%%+(abc)"
|
|
fi
|
|
if [[ ${string1%/*} != "$base" ]]
|
|
then err_exit "string1%/*"
|
|
fi
|
|
if [[ "${string1%/*}" != "$base" ]]
|
|
then err_exit '"string1%/*"'
|
|
fi
|
|
if [[ ${string1%"/*"} != "$string1" ]]
|
|
then err_exit 'string1%"/*"'
|
|
fi
|
|
if [[ ${string1%%/*} != "" ]]
|
|
then err_exit "string1%%/*"
|
|
fi
|
|
if [[ ${string1#*/bar} != /abcabcabc ]]
|
|
then err_exit "string1#*bar"
|
|
fi
|
|
if [[ ${string1##*/bar} != /abcabcabc ]]
|
|
then err_exit "string1#*bar"
|
|
fi
|
|
if [[ "${string1#@(*/bar|*/foo)}" != //bar/abcabcabc ]]
|
|
then err_exit "string1#@(*/bar|*/foo)"
|
|
fi
|
|
if [[ ${string1##@(*/bar|*/foo)} != /abcabcabc ]]
|
|
then err_exit "string1##@(*/bar|*/foo)"
|
|
fi
|
|
if [[ ${string1##*/@(bar|foo)} != /abcabcabc ]]
|
|
then err_exit "string1##*/@(bar|foo)"
|
|
fi
|
|
foo=abc
|
|
if [[ ${foo#a[b*} != abc ]]
|
|
then err_exit "abc#a[b*} != abc"
|
|
fi
|
|
exit $((Errors))
|