22. Bash Shell - 模式匹配(全局通配符)

开篇词

结合模式匹配,我们可以简单并高效地查找我们所需的文件或目录。
 

准备

我们在开始之前先准备一些测试文件

touch 1.txt 2.doc 3.html 1.c 2.c 3.c file1.txt file2.doc file3.html 1file.txt 2file.doc 3file.html

特殊模式字符

匹配任意字符串

我们可以借助星号(*)字符来匹配任意字符串。

匹配以指定字符串开头的文件

ll file*

查找文件名以 file 字符串开头的任意文件

匹配以指定字符串结尾的文件

ll *.txt

查找文件名以 .txt 字符串结尾的任意文件
 

匹配任意字符

我们可以借助问号(?)字符来匹配任意字符。

匹配文件名只有一个字符的文件

ll ?.*

查找文件名为一个字符的文件

匹配文件后缀为四个字符的文件

ll *.????

查找文件后缀为四个字符的文件
 

匹配所包含的任意一个字符

我们可以借助开头结尾方括号([])范围表达式来匹配其所包含的任意一个字符。

匹配字符集任意字符的文件

ll [12f]*

查找以 1、2 或 f 开头的文件

匹配指定数字范围内的文件

ll [1-3]*

查找以 1、2 或 3 开头的文件

匹配指定数字范围外的字符

ll [^1-3]*

查找不以 1、2 或 3 开头的文件
 

我所撰写的英文版本

22. Bash Shell - Pattern Matching (Globbing Wildcards)
 

引用

参见

想看手册的其他内容?请访问该手册的所属专栏:《Linux 管理员手册:既简单又深刻

发布了77 篇原创文章 · 获赞 6 · 访问量 1620

猜你喜欢

转载自blog.csdn.net/stevenchen1989/article/details/104058201