栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Shell - 通配符 Wildcards

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Shell - 通配符 Wildcards

在前面的博文中,介绍了cp、mv、mkdir、rm、ln命令,都是Linux中经常使用到的命令。

它们是用来对文件和文件夹进行操作的。

它们完成的任务,使用图形界面也可做做到,比如拖拽文件或文件夹,剪切、删除文件等。

使用命令行,并没有比图形界面操作更方便快捷。

但使用命令行的好处是功能更强大和灵活,很多命令行能做到的事,图形界面无法做到。

记得为这些命令设计的很多参数了吧,用了这些参数可以满足各种情况的需求。

对于shell命令的强大之处,这里介绍一下其中一个重要特性:通配符。

在shell中,使用文件名是非常频繁的。所以为了快速对一组文件名进行操作,就提供了一些特殊的字符来协助。

这些特殊字符就叫做通配符。英文名Wildcards或globbing。

使用特殊组合的字符,让我们可以选择一组文件。

Wildcard

Meaning

*

Matches any characters

?

Matches any single character

[characters]

Matches any character that is a member of the set characters

[!characters]

Matches any character that is not a member of the set characters

[[:class:]]

Matches any character that is a member of the specified class

下面是常用的character class:

Character Class

Meaning

[:alnum:]

Matches any alphanumeric character

[:alpha:]

Matches any alphabetic character

[:digit:]

Matches any numeral

[:lower:]

Matches any lowercase letter

[:upper:]

Matches any uppercase letter

使用这些通配符的组合,就可以构造出复杂的选择条件,得到指定组合的文件名。

下面举一些各种模式的例子:

Pattern

Matches

*

All files

g*

Any file beginning with "g"

b*.txt

Any file beginning with “b” followed by any characters and ending with “.txt”

Data???

Any file beginning with “Data” followed by exactly three characters

[abc]*

Any file beginning with either an “a”, a “b”, or a “c”

BACKUP.[0-9][0-9][0-9]

Any file beginning with “BACKUP.” followed by exactly three numerals

[[:upper:]]*

Any file beginning with an uppercase letter

[![:digit:]]*

Any file not beginning with a numeral

*[[:lower:]123]

Any file ending with a lowercase letter or the numerals “1”, “2”, or “3”

在上面的表述中,有一种范围表示法,在老的Unix和Linux中,都是支持的,现在也还是能用的,但请小心点。

比如[A-Z]、[A-z]就表示A-Z之间的任意字符和A-z之间的任意字符。

因为按照ASCII码顺序,数字在字母前,大写字母在小写字母前面,所以A-z之间的字符都包含在内,包括几个非字母字符。

而用[1-z],就包含了数字、大小写字母。

因为这种灵活性,在使用时最好指定清晰明确的范围。

在shell命令使用中,需要用文件名作为参数的地方,都可以使用通配符。

在GUI的文件操作模式下,有的也支持在地址栏输入通配符,来选择或显示相应的文件。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/828515.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号