]> git.ipfire.org Git - thirdparty/bash.git/blame - tests/dollar.right
Bash-4.4 distribution sources and documentation
[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
ac50fbac
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
a0c0a00f
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
159argv[1] = <a>
160argv[1] = <a>
161argv[1] = <a>
162argv[1] = <a>
163argv[1] = <a>
164argv[1] = <a>
165argv[1] = <a>
166argv[1] = <one>
167argv[1] = <o>
168argv[1] = <o>
169argv[1] = <one>
170<123 abc> <def> <ghi 456>
171<123 abc> <def> <ghi\ 456>
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>
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
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'>
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|
297
298a1=a b c a,b,c a b c a,b,c a b c a,b,c
299a2=a b c a,b,c a b c a,b,c a b c a,b,c
300a3=a b c a,b,c a b c a,b,c a b c a,b,c
301a4=a b c a,b,c a b c a,b,c a b c a,b,c
b80f6443
JA
302xa|xb|xc
303xa|xb|xc
304a|b|c
305a|b|c
306a b c
307a b c
308xa xb xc
309xa xb xc
310a|b
311b|c
312a b
313b c
314a|b|c
315a|b|c
316xa|xb|xc
317xa|xb|xc
3183
3193
3203
3213
3223
3233
3243
3253
326argv[1] = <echo 1 ; echo 1>
327argv[1] = <echo 1 2 ; echo 1>
328argv[2] = <2>
329argv[1] = <echo 1 ; echo 1>
330argv[1] = <echo 1 2 ; echo 1>
331argv[2] = <2>
95732b49
JA
332argv[1] = <AB>
333argv[1] = <AB>
334argv[1] = <A BC D>
335argv[1] = <A BC D>
336argv[1] = <A BC D>
337argv[1] = <A B>
338argv[2] = <C D>
339argv[1] = <A BC D>
340argv[1] = <A BC D>
3185942a
JA
341argv[1] = <fooq//barq/>
342argv[1] = <fooq>
343argv[2] = <>
344argv[3] = <barq>
345argv[4] = <>
346argv[1] = <foo!//bar!/>
347argv[1] = <foo!>
348argv[2] = <>
349argv[3] = <bar!>
350argv[4] = <>
351argv[1] = <ooq//arq/>
352argv[1] = <ooq>
353argv[2] = <>
354argv[3] = <arq>
355argv[4] = <>
0001803f
CR
3560
357bar
358
359after 1
360
361after 2
3620
363bar
364
365after 1
366
367after 2
368a b
369ab
370cd
371ok 1
372ok 2
ac50fbac
CR
373argv[1] = <a b>
374argv[2] = <c d>
375argv[1] = <a>
376argv[2] = <b>
377argv[3] = <c>
378argv[4] = <d>
379argv[1] = <a b c d>
380argv[1] = <a b c d>
381<1> <2> <3> <4> <5 1>
382<1 1> <2> <3> <4> <5>
383<11> <2> <3> <4> <51>
384<1 1> <2> <3> <4> <5 1>
385<11> <2> <3> <4> <51>
386<1> <2> <3> <4> <51>
387<11> <2> <3> <4> <5>
388<1> <2> <3> <4> <51>
389<11> <2> <3> <4> <5>
390<1> <2> <3> <4> <5foo>
391<1> <2> <3> <4> <51>
392<1> <2> <3> <4> <5foo>
393<1> <2> <3> <4> <51>
394<11> <2> <3> <4> <5>
395<1> <2> <3> <4> <51>
396<11> <2> <3> <4> <5>
397<1> <2> <3> <4> <5foo>
398second set:
399<1 2> <3> <4> <5 1 2>
400<1 2 1 2> <3> <4> <5>
401<1 21 2> <3> <4> <51 2>
402<1 2 1 2> <3> <4> <5 1 2>
403<1> <21 2> <3> <4> <51> <2>
404<1 2> <3> <4> <51> <2>
405<1> <21 2> <3> <4> <5>
406<1 2> <3> <4> <51 2>
407<1 21 2> <3> <4> <5>
408<1 2> <3> <4> <5foo>
409<1> <2> <3> <4> <51> <2>
410<1> <2> <3> <4> <5foo>
411<1 2> <3> <4> <51 2>
412<1 21 2> <3> <4> <5>
413<1 2> <3> <4> <51 2>
414<1 21 2> <3> <4> <5>
415<1 2> <3> <4> <5foo>
416third set:
417
418"${@:2}a3 a2" a$1 #works as long as $1 and 3 are swapped
419set y za3 a2 ax
4200
a0c0a00f 421declare -a a=([0]="y" [1]="za3 a2" [2]="ax")
ac50fbac
CR
422
423"${@:2}b$1 b2" b3 #fails! why?
424set y zbx b2 b3
4250
a0c0a00f 426declare -a b=([0]="y" [1]="zbx b2" [2]="b3")
ac50fbac
CR
427
428${@:2}c$1 c2 c3 #works as long as quoting omitted
429set y zcx c2 c3
4300
a0c0a00f 431declare -a c=([0]="y" [1]="zcx" [2]="c2" [3]="c3")
ac50fbac
CR
432argv[1] = <>
433argv[2] = <x>
434argv[1] = <>
435argv[2] = <x>
4361
437argv[1] = <>
438argv[2] = <>
439argv[3] = <x>
440argv[1] = <>
441argv[2] = <x>
442argv[1] = <>
443argv[2] = <>
444argv[3] = <x>
445argv[1] = <>
446argv[2] = <x>
447argv[1] = <>
448argv[2] = <x>
449argv[1] = <>
450argv[1] = <>
451argv[1] = <>
452argv[1] = <>
453argv[1] = <AwR>
454argv[1] = <AwR>
455argv[1] = <AR>
456argv[1] = <AwR>
457argv[1] = <AR>
458argv[1] = <AR>
459argv[1] = <AwR>
460argv[1] = <AwR>
461argv[1] = <A^?R>
462argv[1] = <AwR>
463argv[1] = <AwR>
464argv[1] = <A^?R>
465<a> <b> <ca> <b> <c-a-b-c>
466after 1: IFS -
467argv[1] = <a-b-c>
468<a> <b> <c> <da> <b c> <d-a-b c-d>
469after 2: IFS -
470argv[1] = <a-b c-d>
471argv[1] = <a>
472argv[2] = <b>
473argv[3] = <c>
474argv[4] = <d>
475argv[1] = <a b c d>
476argv[1] = <a>
477argv[2] = <b>
478argv[3] = <c>
479argv[4] = <d>
480argv[1] = <a b c d>