Linux 正则表达式的基本用法

来源:互联网 发布:双色球独胆计算法 编辑:程序博客网 时间:2024/06/05 06:31
  1. 基本的正则表达式
* #0个或多个在*字符之间的那个普通字符. #匹配任意字符 (可以匹配空格)^ #匹配首行,或者后面字符的非$ #匹配行尾[] #匹配字符集合\ #转义符,屏蔽一个元字符的特殊意思\<\> #精确匹配符号\{n\} #匹配前面字符出现n次\{n,m\} #匹配前面字符出现n-m次
  1. 扩展的正则表达式
    ? #匹配0个或1个在其之前的那个普通字符    + #匹配1个或者多个在其之前的那个普通字符    () #表示一个字符集或用expr中    | #表示“或”,表示一组可选的字符
  1. grep命令由选项、模式和文件三个部分组成的,下面是grep的基本用法
grep -c #只输出匹配的数量grep -i #搜索是忽略大小写grep -h #查询多文件是不显示文件名grep -l #只列出符合匹配的文件名,而不列出具体的匹配行grep -n #列出所有的匹配行,并显示行号grep -s #不显示不存在或无匹配文本的错误信息grep -v #显示不包含匹配文本的所有行grep -w #匹配整词grep -x #匹配整行grep -r #递归搜索,不仅搜索当前的工作目录,而且还搜索子目录grep -q #禁止输出任何结果,以退出状态表示搜索是否成功grep -b #打印匹配行距文件头部的偏移量,以字节为单位grep -o #与-b选项结合使用grep -E #支持扩展的正则表达式grep -F 不支持正则表达式,按照字符串的字面意思进行匹配

(模式包含空格时,要以双引号把整个模式包含起来,不然系统会默认为空格后面是文件名)
grep与正则结合使用

grep -c ^$ one.txt #搜索one.txt的空白行,只打印行数#POSIX字符类[:upper:] #表示大写字母[A-Z][:lower:] #表示小写字母[a-z][:digit:] #表示阿拉伯数字[0-9][:alnum:] #表示大小写字母和阿拉伯数字[A-Z,a-z,0-9][:space:] #表示空格或者tab键[:alpha:] #表示大小写字母[A-Z,a-z][:cntrl:] #表示Ctrl键

grep命令族
grep:标准grep命令,支持基本正则表达式
egrep:扩展grep命令,支持基本和扩展正则表达式
fgrep:快速grep命令,不支持正则表达式
egrep命令等价于grep -E,fgrep等价于grep -F

原创粉丝点击