Unix 通配符使用

本文详细介绍了在命令行中使用的各种通配符,包括0个或多个字符的*、单个字符的?、限定字符范围的[]等,并通过具体示例展示了它们在文件搜索和操作中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


代表0个或多个字符



代表一个字符
例子:
ls 11*2?3      显示11开头的接着是若干个字符,最后是2加一个字符和3结束的文件

[]
可以理解为一个字符,与?的区别是[]里面的内容限定了这个字符的范围
例子:
[Cc]hange[Ll]og
将与 Changelog、ChangeLog、changeLog 以及 changelog 匹配。在需要大小写匹配的时候,使用括弧通配符很有用。
例子:
ls /etc/[0-9]* 将列出 /etc 中以数字开头的所有文件。
ls /tmp/[A-Za-z]* 将列出 /tmp 中以大写字母或小写字母开头的所有文件。

/
功能与单引号类似,
例子:
rm 12/* 则只会删除12*,这里/代表起后面的字符是纯字符没有其他意思,这与C 语言里面的转义字符类似的。很自然的,如果要表示字符/,你必须使用//。

[!]
例子:
rm myfile[!9] 将删除除myfile9 之外的名为 myfile 加一个字符的所有文件。

‘’单引号
例子:
echo ‘[fo]*’ > newfile.txt  创建了包含字符串[fo]*的文件。
如果echo [fo]* > newfile.txt 则 newfile.txt 里面不会有任何东西
例子:
如果用户目录下有12* 12333这么两个文件,那么
rm 12* 会删除12* 和 12333
rm ‘12*’ 则只会删除12*

总结:用引号引起来则说明引号里面的是纯字符串无须进行通配符的相关处理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值