Adding upstream version 5.2.37.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
This commit is contained in:
parent
cf91100bce
commit
fa1b3d3922
1435 changed files with 757174 additions and 0 deletions
120
tests/array-at-star
Normal file
120
tests/array-at-star
Normal file
|
@ -0,0 +1,120 @@
|
|||
# test the expansion of ${array[@]} and ${array[*]}, both quoted and
|
||||
# unquoted. the expansions should be exactly analogous to the
|
||||
# expansions of $@ and $* quoted and unquoted
|
||||
A=(a b)
|
||||
|
||||
recho "${A[*]}"
|
||||
|
||||
# If IFS is null, the parameters are joined without separators
|
||||
IFS=''
|
||||
recho "${A[*]}"
|
||||
|
||||
# If IFS is unset, the parameters are separated by spaces
|
||||
unset IFS
|
||||
recho "${A[*]}"
|
||||
|
||||
recho "${A[@]}"
|
||||
recho ${A[@]}
|
||||
|
||||
IFS='/'
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[*]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[*]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[@]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[@]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# according to POSIX.2, unquoted $* should expand to multiple words if
|
||||
# $IFS is null, just like unquoted $@
|
||||
IFS=''
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set "${A[*]}"
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[*]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[@]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# if IFS is unset, the individual positional parameters are split on
|
||||
# " \t\n" if $* or $@ are unquoted
|
||||
unset IFS
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[*]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set ${A[@]}
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# but not for "$@" or "$*"
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set "${A[*]}"
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
A=(bob 'tom dick harry' joe)
|
||||
set "${A[@]}"
|
||||
recho $#
|
||||
recho $1
|
||||
recho $2
|
||||
recho $3
|
||||
|
||||
# these should both expand the value of A to multiple words
|
||||
A=(a b c d e)
|
||||
IFS=""
|
||||
recho ${A[@]}
|
||||
recho "${A[@]}"
|
||||
|
||||
# this example is straight from the POSIX.2 rationale and adapted to arrays
|
||||
A=(foo bar bam)
|
||||
|
||||
recho "${A[@]}"
|
||||
recho "${A[*]}"
|
||||
|
||||
unset IFS
|
||||
|
||||
recho "${A[@]}"
|
||||
recho ${A[@]}
|
||||
recho "${A[*]}"
|
Loading…
Add table
Add a link
Reference in a new issue