linux 通配符(wildcard)

来源:互联网 发布:python哪个gui最简单 编辑:程序博客网 时间:2024/05/11 12:04

shell 在执行输入的字符串命令之前,会做一些预处理,比如通配符替换。具体例子来说,

如果当前目录中有1.jpg,2.jpg,3.jpg,那么命令

ls  *.jpg

被转换成

ls 1.jpg 2.jpg 3.jpg

? (question mark)通配符

匹配任意一个字符。比如hd?可以表示hdQ或者hd4

* (asterisk)通配符

匹配任意一个或者多个字符。比如hd?可以表示hdQ或者hd4Q或者hdblabla等等。

[ ] (square brackets)通配符

[]中可以指定范围,然后匹配其中一个字符。
m[a,o,u]m匹配mam或者mom或者mum
m[a-d]m匹配mam或者mbm或者mcmmdm

[!]通配符

!表示反义,比如m[!a-d]m匹配除mam或者mbm或者mcmmdm之外的m*m

{ } (curly brackets)通配符

{ }中可以指定多个项,每一个项用,号分割,每一项又可以是通配符。
{*.doc,*.pdf}可以表示foo.doc或者bar.pdf
{1..5}{1,2,3,4,5},表示1 2 3 4 5

echo {1..5}1 2 3 4 5
原创粉丝点击