Linux_正则表达式
2015-12-09 04:57 云物互联 阅读(109) 评论(0) 编辑 收藏 举报目录
前言
介绍一些简单的正则表达式标示符。
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结尾的行
转载请注明作者:JmilkFan 范桂飓