Linux_正则表达式

来源:互联网 发布:java windows api 编辑:程序博客网 时间:2024/05/29 08:48

转自http://blog.csdn.net/Jmilk/article/details/50230189

目录(?)[+]

  1. 目录
  2. 前言
  3. filegrep指令结合正则表达式过滤
  4. rm结合正则表达式删除
  5. 表达式标示符

目录

  • 目录
  • 前言
  • 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 "正则表达式"
  • 1
  • 2
  • 1
  • 2

? :表示”?”前的字符可以出现一次或0次
* :表示*号前的字符可以出现多次或0次
.* : 表示任意字符
grep -E 'a.+' file显示以a开头,后跟一个以上的任意字符
grep -E 'a.+?' file显示以a开头的,后跟0个到多个字符的句子
^a :以a开头的行
a$ :以a结尾的行


原创粉丝点击