]> git.ipfire.org Git - thirdparty/bash.git/blob - tests/braces.tests
Bash-4.3 patch 7
[thirdparty/bash.git] / tests / braces.tests
1 echo ff{c,b,a}
2 echo f{d,e,f}g
3 echo {l,n,m}xyz
4 echo {abc\,def}
5 echo {abc}
6
7 echo \{a,b,c,d,e}
8 echo {x,y,\{a,b,c}}
9 echo {x\,y,\{abc\},trie}
10
11 echo /usr/{ucb/{ex,edit},lib/{ex,how_ex}}
12
13 echo XXXX\{`echo a b c | tr ' ' ','`\}
14 eval echo XXXX\{`echo a b c | tr ' ' ','`\}
15
16 echo {}
17 echo { }
18 echo }
19 echo {
20 echo abcd{efgh
21
22 echo foo {1,2} bar
23 echo `zecho foo {1,2} bar`
24 echo $(zecho foo {1,2} bar)
25
26 var=baz
27 varx=vx
28 vary=vy
29
30 echo foo{bar,${var}.}
31 echo foo{bar,${var}}
32
33 echo "${var}"{x,y}
34 echo $var{x,y}
35 echo ${var}{x,y}
36
37 unset var varx vary
38
39 # new sequence brace operators
40 echo {1..10}
41
42 # this doesn't work yet
43 echo {0..10,braces}
44 # but this does
45 echo {{0..10},braces}
46 echo x{{0..10},braces}y
47
48 echo {3..3}
49 echo x{3..3}y
50 echo {10..1}
51 echo {10..1}y
52 echo x{10..1}y
53
54 echo {a..f}
55 echo {f..a}
56
57 echo {a..A}
58 echo {A..a}
59
60 echo {f..f}
61
62 # mixes are incorrectly-formed brace expansions
63 echo {1..f}
64 echo {f..1}
65
66 echo 0{1..9} {10..20}
67
68 # do negative numbers work?
69 echo {-1..-10}
70 echo {-20..0}
71
72 # weirdly-formed brace expansions -- fixed in post-bash-3.1
73 echo a-{b{d,e}}-c
74
75 echo a-{bdef-{g,i}-c
76
77 echo {"klklkl"}{1,2,3}
78 echo {"x,x"}
79
80 echo {1..10..2}
81 echo {-1..-10..2}
82 echo {-1..-10..-2}
83
84 echo {10..1..-2}
85 echo {10..1..2}
86
87 echo {1..20..2}
88 echo {1..20..20}
89
90 echo {100..0..5}
91 echo {100..0..-5}
92
93 echo {a..z}
94 echo {a..z..2}
95 echo {z..a..-2}
96
97 # make sure brace expansion handles ints > 2**31 - 1 using intmax_t
98 echo {2147483645..2147483649}
99
100 # unwanted zero-padding -- fixed post-bash-4.0
101 echo {10..0..2}
102 echo {10..0..-2}
103 echo {-50..-0..5}
104
105 # bad
106 echo {1..10.f}
107 echo {1..ff}
108 echo {1..10..ff}
109 echo {1.20..2}
110 echo {1..20..f2}
111 echo {1..20..2f}
112 echo {1..2f..2}
113 echo {1..ff..2}
114 echo {1..ff}
115 echo {1..f}
116 echo {1..0f}
117 echo {1..10f}
118 echo {1..10.f}
119 echo {1..10.f}