init version.
[bush.git] / tests.bak / exp11.sub
blobb3e02e082885ff96945639e3bfa88aade8cd1e82
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.
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.
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/>.
14 set -- '1 2'
16 unset var
17 recho ${var-${*:1}}
19 unset var
20 recho ${var=$*}
22 unset var
23 recho ${var=${*:1}}
24 recho "$var"
26 # posix interp 221
27 unset var
28 recho ${var:-a\ b}
30 recho ${var:=a\ b}
31 recho "$var"
33 set -- 1 2
34 IFS=
36 unset a b c
37 recho $*
38 recho ${a-$*}
39 recho ${b-${*/}}
40 recho ${c=${*/}}
41 recho "$c"
42 recho ${b-${*,,}}
43 recho ${d-${*,,}}
45 unset -v a b c
46 IFS=$' \t\n'
48 set -- ' '
49 A=(' ')
51 IFS=
52 unset var
53 var=${*@E}
54 recho "$var"
56 unset var
57 var=${A[*]@E}
58 recho "$var"
60 unset var
61 var=${@@E}
62 recho "$var"
64 unset var
65 var=${A[@]@E}
66 recho "$var"
68 unset novar
69 recho ${novar-${A[*]@E}}
71 unset -v var novar
72 IFS=$' \t\n'
74 set -- 1 2
75 A=( 1 2 )
76 IFS=
78 a=$* 
79 recho "$a"
80 b=${*@E}
81 recho "$b"
83 unset a b
84 a=${A[*]}
85 recho "$a"
86 b=${A[*]@E}
87 recho "$b"
89 set -- $'\t'
90 A=$1
92 IFS=$1
93 [[ ${A[@]} ]] && echo ok 1
94 [[ ${A[*]} ]] && echo ok 2
95 [[ ${A[0]} ]] && echo ok 3
97 IFS=$' \t\n'
98 [[ ${A[@]} ]] && echo ok 4
99 [[ ${A[*]} ]] && echo ok 5
100 [[ ${A[0]} ]] && echo ok 6
102 IFS=
103 [[ ${A[@]} ]] && echo ok 7
104 [[ ${A[*]} ]] && echo ok 8
105 [[ ${A[0]} ]] && echo ok 9