通配符 glob 语法简介

查看原文

在很久以前,glob 是 UNIX V6 的一个程序,后来就被整合进 shell 成为内建功能。Globbing,就是将一些通配符扩展为一个路径的列表。跟正则表达式不同的是,? 表示任何单一字符,* 表示包括空格在内的任何字符。 * [] 中间一定要有东西,用于表示字符集。 例如 [][!] 表示的其实是 [, ], ! 这三种字符。 * [] 中间可以用短横线表示范围,例如 [a-ZA-Z0-9] 表示字符数字,[--0] 表示 -, ., 0; []-] 表示 ], -。 * [] 中间用反斜杠 \ 做转义。 * 两个设定: * '/' 不会被 * 或者范围识别出来,因为这个程序是用来识别路径的。 * . 开头的文件需要显式指定出来,例如 rm * 是不会删除 .profile 的。 * 没有任何东西识别出来,对应的是空列表。