linux文件名匹配

*   匹配文件名中的任何字符串,包括空字符串。

? 匹配文件名中的任何单个字符。

[...]   匹配[ ]中所包含的任何字符。

[!...]   匹配[ ]中非感叹号!之后的字符。

如:

s*          s开头的所有字符串

*s         s结尾的所有字符串

*s?        以s为倒数第二个字符的字符串

[0-9]    所有以数字的字符

[a,b]         a或者b

[!0-9]        不是数字的字符

ls /user/[!a-n]*.sh :列出/user/目录中不是以字母a到n开头的,且以.sh结尾的文件

ls /user/[a-n]*.txt :列出/user/目录中以字母a到n开头的,且以.txt结尾的文件

ls /user/[ab]*  :列出以a或b开头的文件名

原文地址:https://www.cnblogs.com/fulse/p/8881216.html