linux总结01-如何写通配符

之前一直做java方向的开发、设计、架构等工作。从今年开始转向云计算,重点在 IaaS 和 PaaS。无论是最热门的 IaaS 平台 OpenStack 还是 PaaS 平台 Docker,均是运行在linux操作系统上面。所以,不学好linux,就无法真正深入掌握云计算核心技术。因此,我就从linux基础学起,并把学习过程的总结发表出来,一是督促自己不断去学习,二是也和刚学习linux及云计算的朋友分享学习的成果或者经验教训,一起尽快掌握相关技术,提升自己的实力。

第01总结——如何写通配符

在linux中,是通过通配符来实现一种符号可代表多个操作对象的目的,linux下使用
的通配符有以下几种:

* 代表0个到无穷多个任意字符
? 代表单个任意字符
[ ] 代表一定有一个在括号内的字符。例如 [abcd] 表示可能是 a, b, c, d 这四个任何一个
[ - ] 若有减号在中括号内时,代表在编码顺序内的所有字符。例如 [0-9] 代表 0 到 9 之间的所有数字
[^ ] 若中括号内的第一个字符为指数符号 (^) ,那表示反向选择,例如 [^abc] 表示一定有一个字符,但不是a,b,c中的任何一个

一些示例:
(1)设当前目录下有以下文件:

1 a 2 a.exe 3 b
4 b.txt 5 abc 6 abc.exe
7 c.txt 8 ba 9 ac
10 bc.txt 11 a.xy 12 ca.yz

试写出恰好代表下列文件的通配符:

A:2,6,11
a???*
B:5,6
abc*
C:4,7,10
*.txt
D:11,12
*.[xy][yz]
E:8,9
[ab][ac]
F:4,7
[bc].txt
G:10
bc.txt
H:2,4,6,7,10
*.???

(2)设当前目录下有以下文件:

1 abc 2 abd 3 bcd
4 acd 5 ab.exe 6 bc.txt
7 ab.txt 8 cd 9 ad.txt
10 ac.exe 11 abc.com 12 a.xy
13 b.com 14 bc.yz 15 ad

试写出恰好代表下列文件的通配符:

A:5,7,9
a[bd].???
B:6,13,14
b[c.][c.]*
C:3,4
[ab]cd
D:5,6,7,9,10,14
??.*
E:12,13
[ab].*

你可能感兴趣的:(linux,云计算)