grep/egrep
2014-04-30 14:24
295 查看
grep/egrep
grep/egrepgrep一般格式为:
grep [选项] 基本正则表达式 [文件]
这里基本正则表达式可为字符串。
(1)输入字符串参数时,最好将其用双引号括起来。例如:"mystring"
(2)在调用变量时,也应该使用双引号,诸如: grep "$MYVAR" 文件名
(3)在调用模式匹配时,应使用单引号。例:grep '48[34]' data.txt
常用的grep选项有:
-c 只输出匹配行的计数。
-i 不区分大小写(只适用于单字符)。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-n 显示匹配行及行号。
-s 不显示不存在或无匹配文本的错误信息。(屏蔽错误提示信息)
-v 显示不包含匹配文本的所有行。
-w或在抽取字符串后加\ > 精确匹配
[] 匹配模式范围,括号内都是或者关系,顺序不分先后,也可写成A-Z 这样的范围的形式
[^] 不匹配的模式范围
. 点--匹配任意字符
\{n\} 匹配n次 例: '5\{3\}' 匹配连续3个5
\{n,\} 匹配至少n次
\{n,m\} 匹配n-m次
-E 或者匹配
特殊字符 如$ . ' " * [] ^ | \ + ? ,必须在特定字符前加\。
使用grep匹配“与”或者“或”模式
结合使用^和$可查询空行。使用- n参数显示实际行数
grep -v ^$ text //去除text中所有空行后再显示
补充说明:
参数 -1 -A1 -B1
1. grep -A1 keyword filename
找出filename中带有keyword的行,输出中除显示该行外,还显示之后的一行(After 1)
2. grep -B1 keyword filename
找出filename中带有keyword的行,输出中除显示该行外,还显示之前的一行(Before 1)
3. grep -1 keyword filename
找出filename中带有keyword的行,输出中除显示该行外,还显示之前的一行(After 1)和显示之后的一行(After 1)
egrep
以一个文件作为保存的字符串,然后将之传给egrep作为参数,为此使用- f开关。
使用文件中的每一行作为正则表达式进行匹配
# cat egrep01
s5
s6
#
# ll | egrep -f egrep01
-rwxrwSrwt 1 root root 166 Feb 6 17:53 s5
-rwxrwSrwt 1 root root 56 Feb 7 08:53 s6
grep -ir "hima_install_syslog" *
相关文章推荐
- grep与egrep命令及正则表达式
- 正则、grep与egrep工具
- linux基本命令grep egrep fgrep用法以及正则表达式
- 正则表达式利器之grep与egrep的使用及其区别
- grep 或egrep的用法
- 正则表达式grep和egrep
- 详解正则表达式以及文本处理工具—grep、egrep的用法和特性
- 过滤工具grep | egrep|awk|sed
- 正则表达式(grep,egrep,fgrep)
- Linux egrep grep命令的使用
- Linux中 grep/egrep的命令收集
- grep与正则表达式,grep、egrep和fgrep
- Linux三剑客之grep、egrep及正则表达式使用详解
- linux之grep和egrep命令
- grep 和 egrep fgrep
- fgrep grep egrep
- grep、fgrep 和 egrep 命令
- linux正则表达式 grep egrep用法
- 【马哥教育视频】grep、egrep及正则表达式入门篇
- 扩展grep(grep -E 或者 egrep)