]> git.ipfire.org Git - thirdparty/bash.git/blame - tests/dollar.right
bash-4.4 rc1 release
[thirdparty/bash.git] / tests / dollar.right
CommitLineData
cce855bc 1argv[1] = <>
726f6388 2argv[1] = <a b>
d166f048
JA
3argv[1] = <ab>
4argv[1] = <a b>
726f6388
JA
5argv[1] = <a>
6argv[2] = <b>
cce855bc
JA
7argv[1] = <a>
8argv[2] = <b>
9argv[1] = <3>
10argv[1] = <bob>
11argv[1] = <tom dick harry>
12argv[1] = <joe>
13argv[1] = <3>
14argv[1] = <bob>
15argv[1] = <tom dick harry>
16argv[1] = <joe>
17argv[1] = <3>
18argv[1] = <bob>
19argv[1] = <tom dick harry>
20argv[1] = <joe>
21argv[1] = <3>
22argv[1] = <bob>
23argv[1] = <tom dick harry>
24argv[1] = <joe>
25argv[1] = <3>
26argv[1] = <bob>
27argv[1] = <tom dick harry>
28argv[1] = <joe>
29argv[1] = <3>
30argv[1] = <bob>
31argv[1] = <tom dick harry>
32argv[1] = <joe>
33argv[1] = <5>
34argv[1] = <bob>
35argv[1] = <tom>
36argv[1] = <dick>
37argv[1] = <5>
38argv[1] = <bob>
39argv[1] = <tom>
40argv[1] = <dick>
41argv[1] = <1>
42argv[1] = <bob>
43argv[2] = <tom>
44argv[3] = <dick>
45argv[4] = <harry>
46argv[5] = <joe>
47argv[1] = <3>
48argv[1] = <bob>
49argv[1] = <tom>
50argv[2] = <dick>
51argv[3] = <harry>
52argv[1] = <joe>
53argv[1] = <a>
54argv[2] = <b>
55argv[3] = <c>
56argv[4] = <d>
57argv[5] = <e>
58argv[1] = <a>
59argv[2] = <b>
60argv[3] = <c>
61argv[4] = <d>
62argv[5] = <e>
63argv[1] = <foo>
64argv[2] = <bar>
65argv[3] = <bam>
66argv[1] = <foobarbam>
67argv[1] = <foo>
68argv[2] = <bar>
69argv[3] = <bam>
70argv[1] = <foo>
71argv[2] = <bar>
72argv[3] = <bam>
73argv[1] = <foo bar bam>
28ef6c31
JA
74foo = 1:2:3:4:5:6:7:8:9:10
75bar = 1:2:3:4:5:6:7:8:9:10
76foo1 = 1 2 3 4 5 6 7 8 9 10
77bar1 = 1 2 3 4 5 6 7 8 9 10
78foo2 = 1:2:3:4:5:6:7:8:9:10
79bar2 = 1:2:3:4:5:6:7:8:9:10
80foo3 = 1:2:3:4:5:6:7:8:9:10
81bar3 = 1:2:3:4:5:6:7:8:9:10
82ok 1
83ok 2
84ok 3
85ok 4
86foo = 1 2 3 4 5 6 7 8 9 10
87bar = 1 2 3 4 5 6 7 8 9 10
88foo1 = 1 2 3 4 5 6 7 8 9 10
89bar1 = 1 2 3 4 5 6 7 8 9 10
90foo2 = 1 2 3 4 5 6 7 8 9 10
91bar2 = 1 2 3 4 5 6 7 8 9 10
92foo3 = 1 2 3 4 5 6 7 8 9 10
93bar3 = 1 2 3 4 5 6 7 8 9 10
94ok 1
95ok 2
96ok 3
97ok 4
c7e43312
CR
98var=${a[*]} ... one:::two:three:::four
99var="${a[*]}" ... one:::two:three:::four
100var=$* ... one:::two:three:::four
101var="$*" ... one:::two:three:::four
102var=${a[@]} ... one:::two three:::four
103var="${a[@]}" ... one:::two three:::four
104var=$@ ... one:::two three:::four
105var="$@" ... one:::two three:::four
0d9b018b
CR
106ok 1
107ok 2
108ok 3
109ok 4
110ok 5
111ok 6
112ok 7
113ok 8
114ok 9
115ok 10
116ok 11
117ok 12
118ok 13
119ok 14
120ok at 1
121ok at 2
122ok star 1
123ok star 2
124 ,foo
125 ,foo
126 ,foo
127 ,foo
128ok at 1
129ok at 2
130ok at 3
131ok star 1
132ok star 2
133ok star 3
134ok at-star 1
135ok at-star 2
136a b c
137a|b|c
138a b c
139a|b|c
140ok at 1
141ok at 2
142ok at 3
143ok at 4
144ok at 5
145ok at 1
146ok at 2
147ok at 3
148ok at 4
149ok at 5
150ok at 1
151ok at 2
152ok at 3
153ok at 4
154ok at 5
155ok at 6
156ok at 7
157ok at 8
158ok at 9
b4a00022
CR
159argv[1] = <a>
160argv[1] = <a>
f3aad56d
CR
161argv[1] = <a>
162argv[1] = <a>
163argv[1] = <a>
164argv[1] = <a>
165argv[1] = <a>
166argv[1] = <one>
167argv[1] = <o>
168argv[1] = <o>
b4a00022
CR
169argv[1] = <one>
170<123 abc> <def> <ghi 456>
171<123 abc> <def> <ghi\ 456>
e0722a04
CR
172<c>
173a bc
174a b
175ab
176<a><b>
177a b
178a b
179<a><b><c><d>
180<a><b><c d>
181<a><b>
182<a:b>
183<a><b>
184<a b>
185abcd
186d
187abcd
188d
189c
190argv[1] = <a b>
191argv[1] = <abcd>
192argv[1] = <abcd>
193argv[1] = <a>
194argv[2] = <b>
195argv[1] = <a b>
f3aad56d
CR
196<c>
197<c>
198<d>
199<d>
2000
2010
2021
2031
2041
2050
2060
2070
2081
2090
2100
2110
2121
213after 1
214after 2
215after 3
216same as 1
217argv[1] = <>
218same as 2
219argv[1] = <>
220null fields
221argv[1] = <>
222argv[1] = <>
223null fields in rhs
224null string with unquoted $@
225argv[1] = <>
226null string with quoted $@
227assignment
228argv[1] = <>
229variable
230argv[1] = <>
231dollar-at
54a5fbe1
CR
232argv[1] = <'a'>
233argv[2] = <'b'>
234argv[3] = <'c'>
235argv[1] = <'a'>
236argv[2] = <'b'>
237argv[3] = <'c'>
238argv[1] = <>
239argv[2] = <a>
240argv[3] = <>
241argv[4] = <>
242argv[5] = <b>
243argv[6] = <>
244argv[7] = <>
245argv[8] = <c>
246argv[1] = <'a'>
247argv[2] = <'b'>
248argv[3] = <'c'>
249argv[1] = <>
250argv[2] = <a>
251argv[3] = <>
252argv[4] = <>
253argv[5] = <b>
254argv[6] = <>
255argv[7] = <>
256argv[8] = <c>
257argv[1] = <'a'>
258argv[2] = <'b'>
259argv[3] = <'c'>
260argv[1] = <>
261argv[2] = <a>
262argv[1] = <'a'>
263argv[1] = <'a'>
264argv[2] = <'b'>
265argv[3] = <'c'>
266argv[1] = <'a'>
267argv[2] = <'b'>
268argv[3] = <'c'>
690150f9
CR
269|this|
270|is|
271|a|
272|test|
273
274|this|
275|is|
276|a|
277|test|
278
279|this|
280|is|
281|a|
282|test|
283
284|this|
285|this|
286
287|this is a test|
288|this is a test|
289|this|
290|is|
291|a|
292|test|
293|this|
294|is|
295|a|
296|test|
d3a24ed2
CR
297xa|xb|xc
298xa|xb|xc
299a|b|c
300a|b|c
301a b c
302a b c
303xa xb xc
304xa xb xc
305a|b
306b|c
307a b
308b c
309a|b|c
310a|b|c
311xa|xb|xc
312xa|xb|xc
12d937f9
CR
3133
3143
3153
3163
3173
3183
3193
3203
762a763b
CR
321argv[1] = <echo 1 ; echo 1>
322argv[1] = <echo 1 2 ; echo 1>
323argv[2] = <2>
324argv[1] = <echo 1 ; echo 1>
325argv[1] = <echo 1 2 ; echo 1>
326argv[2] = <2>
227f982e
CR
327argv[1] = <AB>
328argv[1] = <AB>
329argv[1] = <A BC D>
330argv[1] = <A BC D>
331argv[1] = <A BC D>
332argv[1] = <A B>
333argv[2] = <C D>
334argv[1] = <A BC D>
335argv[1] = <A BC D>
09767ff0
CR
336argv[1] = <fooq//barq/>
337argv[1] = <fooq>
338argv[2] = <>
339argv[3] = <barq>
340argv[4] = <>
341argv[1] = <foo!//bar!/>
342argv[1] = <foo!>
343argv[2] = <>
344argv[3] = <bar!>
345argv[4] = <>
346argv[1] = <ooq//arq/>
347argv[1] = <ooq>
348argv[2] = <>
349argv[3] = <arq>
350argv[4] = <>
1231ac47
CR
3510
352bar
2c471a92
CR
353
354after 1
355
356after 2
1231ac47
CR
3570
358bar
2c471a92
CR
359
360after 1
361
362after 2
94a5513e
CR
363a b
364ab
365cd
366ok 1
367ok 2
40647963
CR
368argv[1] = <a b>
369argv[2] = <c d>
370argv[1] = <a>
371argv[2] = <b>
372argv[3] = <c>
373argv[4] = <d>
374argv[1] = <a b c d>
375argv[1] = <a b c d>
348a457e
CR
376<1> <2> <3> <4> <5 1>
377<1 1> <2> <3> <4> <5>
378<11> <2> <3> <4> <51>
379<1 1> <2> <3> <4> <5 1>
380<11> <2> <3> <4> <51>
381<1> <2> <3> <4> <51>
382<11> <2> <3> <4> <5>
383<1> <2> <3> <4> <51>
384<11> <2> <3> <4> <5>
385<1> <2> <3> <4> <5foo>
386<1> <2> <3> <4> <51>
387<1> <2> <3> <4> <5foo>
388<1> <2> <3> <4> <51>
389<11> <2> <3> <4> <5>
390<1> <2> <3> <4> <51>
391<11> <2> <3> <4> <5>
392<1> <2> <3> <4> <5foo>
393second set:
394<1 2> <3> <4> <5 1 2>
395<1 2 1 2> <3> <4> <5>
396<1 21 2> <3> <4> <51 2>
397<1 2 1 2> <3> <4> <5 1 2>
398<1> <21 2> <3> <4> <51> <2>
399<1 2> <3> <4> <51> <2>
400<1> <21 2> <3> <4> <5>
401<1 2> <3> <4> <51 2>
402<1 21 2> <3> <4> <5>
403<1 2> <3> <4> <5foo>
404<1> <2> <3> <4> <51> <2>
405<1> <2> <3> <4> <5foo>
406<1 2> <3> <4> <51 2>
407<1 21 2> <3> <4> <5>
408<1 2> <3> <4> <51 2>
409<1 21 2> <3> <4> <5>
410<1 2> <3> <4> <5foo>
411third set:
412
413"${@:2}a3 a2" a$1 #works as long as $1 and 3 are swapped
414set y za3 a2 ax
4150
83633b6f 416declare -a a=([0]="y" [1]="za3 a2" [2]="ax")
348a457e
CR
417
418"${@:2}b$1 b2" b3 #fails! why?
419set y zbx b2 b3
4200
83633b6f 421declare -a b=([0]="y" [1]="zbx b2" [2]="b3")
348a457e
CR
422
423${@:2}c$1 c2 c3 #works as long as quoting omitted
424set y zcx c2 c3
4250
83633b6f 426declare -a c=([0]="y" [1]="zcx" [2]="c2" [3]="c3")
4a2c75c6
CR
427argv[1] = <>
428argv[2] = <x>
429argv[1] = <>
430argv[2] = <x>
4311
432argv[1] = <>
433argv[2] = <>
434argv[3] = <x>
435argv[1] = <>
436argv[2] = <x>
437argv[1] = <>
438argv[2] = <>
439argv[3] = <x>
440argv[1] = <>
441argv[2] = <x>
442argv[1] = <>
443argv[2] = <x>
444argv[1] = <>
445argv[1] = <>
446argv[1] = <>
447argv[1] = <>
0500de0b 448argv[1] = <AwR>
8b20235a
CR
449argv[1] = <AwR>
450argv[1] = <AR>
451argv[1] = <AwR>
0500de0b
CR
452argv[1] = <AR>
453argv[1] = <AR>
7175a77f
CR
454argv[1] = <AwR>
455argv[1] = <AwR>
456argv[1] = <A^?R>
457argv[1] = <AwR>
458argv[1] = <AwR>
459argv[1] = <A^?R>
1a81420a
CR
460<a> <b> <ca> <b> <c-a-b-c>
461after 1: IFS -
462argv[1] = <a-b-c>
463<a> <b> <c> <da> <b c> <d-a-b c-d>
464after 2: IFS -
465argv[1] = <a-b c-d>
466argv[1] = <a>
467argv[2] = <b>
468argv[3] = <c>
469argv[4] = <d>
470argv[1] = <a b c d>
471argv[1] = <a>
472argv[2] = <b>
473argv[3] = <c>
474argv[4] = <d>
475argv[1] = <a b c d>