Line | |
---|
1 | a=$'a\001b'
|
---|
2 |
|
---|
3 | set $a
|
---|
4 |
|
---|
5 | b=$a
|
---|
6 | c=$1
|
---|
7 | d="$1"
|
---|
8 |
|
---|
9 | e=$'uv\001\001wx'
|
---|
10 | f=$'uv\001w\001xy'
|
---|
11 |
|
---|
12 | set $e $e
|
---|
13 |
|
---|
14 | recho ${e%%??}
|
---|
15 | recho "${e%%??}"
|
---|
16 |
|
---|
17 | recho ${e%%???}
|
---|
18 | recho "${e%%???}"
|
---|
19 |
|
---|
20 | recho ${a#?}
|
---|
21 | recho "${a#?}"
|
---|
22 |
|
---|
23 | # simple variables
|
---|
24 |
|
---|
25 | recho ${f##*$'\001'}
|
---|
26 | recho "${f##*$'\001'}"
|
---|
27 | recho ${f##*''} # literal ^A
|
---|
28 | recho "${f##*'^A'}" # two characters, `^' and `A'
|
---|
29 |
|
---|
30 | recho ${e%$'\001'*}
|
---|
31 | recho "${e%$'\001'*}"
|
---|
32 | recho ${e#*$'\001'}
|
---|
33 | recho "${e#*$'\001'}"
|
---|
34 |
|
---|
35 | # array members
|
---|
36 |
|
---|
37 | arr[0]=$e
|
---|
38 | arr[1]=$f
|
---|
39 |
|
---|
40 | recho ${arr[1]##*$'\001'}
|
---|
41 | recho "${arr[1]##*$'\001'}"
|
---|
42 | recho ${arr[1]##*''} # literal ^A
|
---|
43 | recho "${arr[1]##*'^A'}" # two characters, `^' and `A'
|
---|
44 |
|
---|
45 | recho ${arr[0]%$'\001'*}
|
---|
46 | recho "${arr[0]%$'\001'*}"
|
---|
47 | recho ${arr[0]#*$'\001'}
|
---|
48 | recho "${arr[0]#*$'\001'}"
|
---|
49 |
|
---|
50 | recho ${arr%$'\001'*}
|
---|
51 | recho "${arr%$'\001'*}"
|
---|
52 | recho ${arr#*$'\001'}
|
---|
53 | recho "${arr#*$'\001'}"
|
---|
54 |
|
---|
55 | # positional parameters
|
---|
56 |
|
---|
57 | set $e $f
|
---|
58 |
|
---|
59 | recho ${2##*$'\001'}
|
---|
60 | recho "${2##*$'\001'}"
|
---|
61 | recho ${2##*''} # literal ^A
|
---|
62 | recho "${2##*''}" # literal ^A
|
---|
63 | recho ${2##*'^A'} # two characters, `^' and `A'
|
---|
64 | recho "${2##*'^A'}" # two characters, `^' and `A'
|
---|
65 |
|
---|
66 | recho ${1%$'\001'*}
|
---|
67 | recho "${1%$'\001'*}"
|
---|
68 | recho ${1#*$'\001'}
|
---|
69 | recho "${1#*$'\001'}"
|
---|
70 |
|
---|
71 | recho ${@%$'\001'*}
|
---|
72 | recho "${@%$'\001'*}"
|
---|
73 | recho ${@#*$'\001'}
|
---|
74 | recho "${@#*$'\001'}"
|
---|
75 | recho ${@##*''} # literal ^A
|
---|
76 | recho "${@##*'^A'}" # two characters, `^' and `A'
|
---|
77 |
|
---|
78 | # arrays treated as a whole
|
---|
79 |
|
---|
80 | recho ${arr[@]%$'\001'*}
|
---|
81 | recho "${arr[@]%$'\001'*}"
|
---|
82 | recho ${arr[@]#*$'\001'}
|
---|
83 | recho "${arr[@]#*$'\001'}"
|
---|
84 | recho ${arr[@]##*''} # literal ^A
|
---|
85 | recho "${arr[@]##*'^A'}" # two characters, `^' and `A'
|
---|
Note:
See
TracBrowser
for help on using the repository browser.