本文只是自己记录方便偶尔查阅,没有任何干货或阅读价值...
shell常用的通配符就几个1
2
3
4
5* 匹配0至任意多个字符
? 匹配x个任意字符
[] 匹配[]内部的字符
[-] 匹配范围
{} 匹配组合
touch {a,b,abc}.{sh,txt}; ll
1
2
3
4
5
6
7total 0
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.txt
1
2
3
4
5
6
7
8➜ glob ll a*
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.txt
➜ glob ll a*.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.txt
?
1
2
3
4
5
6
7
8
9
10
11➜ glob ll ?.*
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.txt
➜ glob ll ?.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.txt
➜ glob ll ???.*
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.txt[] [-]
1
2
3
4
5
6
7
8
9
10
11➜ glob touch z.sh
➜ glob ll [ab].sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.sh
➜ glob ll [a-c]*
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 b.txt{} {..}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15➜ glob ll {a,abc}.{sh,txt}
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 a.txt
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.sh
-rw-r--r-- 1 jsonz staff 0B 3 30 15:59 abc.txt
➜ glob touch {h..o}.js
➜ glob ll *.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 h.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 i.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 j.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 k.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 l.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 m.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 n.js
-rw-r--r-- 1 jsonz staff 0B 3 30 16:10 o.js