Linux命令详解之正则表达式




特殊字符

^

行首

$

行尾

.

任意一个字符

[]

内含字符范围,加^表示反向字符范围,在该范围内任何一个字符都可以匹配

(若要恢复普通用法,可在其前加转义字符\)

特殊匹配模式

[:alnum:]

字母与数字字符

[:alpha:]

字母

[:ascii:]

ascii字符

[:blank:]

空格或制表符

[:cntrl:]

ascii控制字符

[:digit:]

数字

[:graph:]

非控制、非空格字符

[:lower:]

小写字母

[:print:]

可打印字符

[:punct:]

标点符号字符

[:space:]

空白字符,包括垂直制表符

[:upper:]

大写字母

[:xdigit:]

十六进制数字

其他字符

?

至多匹配一次

*

必须匹配0次或多次

+

必须匹配1次或多次

{n}

必须匹配n次

{n,}

必须匹配n次或n次以上

{n,m}

必须匹配在n到m次之间,包括n和m

示例

查找当前目录下所有以一位数字命名且以.txt结尾的文件,并进行显示

find .-name "[[:digit:]]\.txt" -ok ls -l {} \;

查找所有以.txt结尾的文件并显示

find . -name"[[:alnum:]]*\.txt" -ok ls -l {} \;

相关内容