文件名通配机制

文件名通配机制也称为globbing通配机制,它是bash环境的一种特性,用于在shell环境中通配文件名。其通配机制如下:

  • *:匹配任意长度的任意字符–全文件名部分匹配

  • ?: 匹配单个任意字符–全文件名精确匹配

  • []: 匹配指定字符范围内的任意单个字符,不区分大小写

    • [a-z]:不区分大小写,可以匹配大写字母
    • [A-Z]:不区分大小写,可以匹配小写字母
    • [0-9]:匹配0到9任意单个数字
    • [a-z0-9]:匹配单个字母或数字
    • [[:upper:]]:匹配单个大写字母
    • [[:lower:]]:匹配单个小写字母
    • [[:alpha:]]:匹配单个大写或小写字母
    • [[:digit:]]:匹配单个数字
    • [[:alnum:]]:匹配单个字母或数字
    • [[:space:]]:匹配单个空格字符
    • [[:punct:]]:匹配单个标点符号
  • [^]: 匹配指定字符范围外的任意单个字符

    • [^a-z]:匹配字母之外的单个字符
    • [^A-Z]:匹配字母之外的单个字符
    • [^0-9]:匹配数字之外的单个字符
    • [^a-z0-9]:匹配字母和数字之外的单个字符
    • [^[:upper:]]:匹配大写字母之外的单个字符
    • [^[:lower:]]:匹配小写字母之外的单个字符
    • [^[:alpha:]]:匹配字母之外的单个字符
    • [^[:digit:]]:匹配数字之外的单个字符
    • [^[:alnum:]]:匹配字母和数字之外的单个字符
    • [^[:space:]]:匹配空格字符之外的单个字符
    • [^[:punct:]]:匹配标点符号之外的单个字符