0
点赞
收藏
分享

微信扫一扫

Linux_正则表达式


目录



  • ​​目录​​
  • ​​前言​​
  • ​​filegrep指令结合正则表达式过滤​​
  • ​​rm结合正则表达式删除​​
  • ​​表达式标示符​​


前言

介绍一些简单的正则表达式标示符。

file、grep指令结合正则表达式过滤

[a,b,c] 若行中与[a,b,b]其中一个,则显示

[a-z]若行中有[a-z]其中一个,则显示

[^ab]除了a或者b一个字符开头的,都显示

[^a-z]*第一个字符不为字母的则显示

[a-z][0-9]找出字母和数字相连的行则显示

rm结合正则表达式删除

​rm -rf .[!.]*​​删除第一个字符是.第二个字符不是.的行

​rm -rf *​​通配符*默认不是删除隐藏文件

​shopt -s dotglob​​设定通配符*可以包含”.”

​shopt -u doglob​​还原一个例外i,设定通配符*不包含”.”

表达式标示符

. :表示单个字符

+ :表示”+”前面的字符可以出现按多次,一次以上不能为0次

egrep a+ file    #显示a出现一次以上的行 
#egrep 等效于 grep -E "正则表达式"

? :表示”?”前的字符可以出现一次或0次

* :表示*号前的字符可以出现多次或0次

.* : 表示任意字符

​grep -E 'a.+' file​​显示以a开头,后跟一个以上的任意字符

​grep -E 'a.+?' file​​显示以a开头的,后跟0个到多个字符的句子

^a :以a开头的行

a$ :以a结尾的行



举报

相关推荐

0 条评论