linux 通配符(wildcard)
shell 在执行输入的字符串命令之前,会做一些预处理,比如通配符替换。具体例子来说,
如果当前目录中有1.jpg,2.jpg,3.jpg,那么命令
ls *.jpg
被转换成
ls 1.jpg 2.jpg 3.jpg
? (question mark)通配符
匹配任意一个字符。比如hd?可以表示hdQ或者hd4。
* (asterisk)通配符
匹配任意零个或者多个字符。比如hd*可以表示hd或者hd4Q或者hdblabla等等。
[ ] (square brackets)通配符
[]中可以指定范围,然后匹配其中一个字符。
m[a,o,u]m匹配mam或者mom或者mum。
m[a-d]m匹配mam或者mbm或者mcm、mdm。
[!]通配符
!表示反义,比如m[!a-d]m匹配除mam或者mbm或者mcm、mdm之外的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
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
