转载请注明出处http://blog.youkuaiyun.com/zhaoyanjun6/article/details/79221495
本文出自【赵彦军的博客】
grep命令简介
grep 是一个最初用于 Unix 操作系统的命令行工具。在给出文件列表或标准输入后,grep会对匹配一个或多个正则表达式的文本进行搜索,并只输出匹配(或者不匹配)的行或文本。
grep 可根据提供的匹配模式列表,查询文件中的匹配行.发现匹配行后,行内容会被标准输出(默 认),如果使用了其它参数,可以产生其它格式的输出。
grep 用于匹配文本,它对输入行的长度没有限制,除非受限于可用内存大小,并且可以匹配行内任意字符。
使用方法
grep -[可选参数] ‘搜索内容串’ filename
常用参数选项
-c 计算找到的符合行的次数。
-i 忽略大小写。
-n 显示匹配行及行号。
-v 找到没有搜索字符串的行。
-h 查询多文件时不显示文件名。
-l 查询多文件时只输出包含匹配字符的文件名。
-s 不显示不存在或无匹配文本的错误信息。
grep 具体使用实例
有一个文件 test.txt , 内容如下。
a
ab
abc
d
e
abcde
A
B
1、查找 a 字符串
grep “a” test.txt
或者
grep a test.txt
效果如下
2、 -c 计算找到的符合行的次数。
grep -c a test.txt
效果如下:
代表有 a 字符的文本出现了 4 次
3、 -i 忽略大小写。
grep -i a test.txt
结果如下:
4、 -n 显示匹配行及行号
grep -n a test.txt
效果如下:
可以看到 test.txt 中包含 a 字符串有 4 处,分别在第一行、第二行、第三行、第六行。
5、 -v 找到没有搜索字符串的行。
grep -v a test.txt
效果如下
6、在多个文件中查找
现在把 test.txt 文件复制一份为 test2.txt , 现在在两个文件中查找 a 字符串
grep a test.txt test2.txt
效果如下:
7、-h 在多个文件中查找,去掉文件的名字
grep -h a test.txt test2.txt
效果如下:
8、-l 查询多文件时只输出包含匹配字符的文件名。
grep -l a test.txt test2.txt
效果如下
9、-w 精准全匹配搜索
在 test.txt 文本中精确匹配 ab 单词
grep -w “ab” test.txt
效果如下:
10、模糊匹配
在所有 txt 文本中,查找 a 字符串
grep a *.txt
个人微信号:zhaoyanjun125 , 欢迎关注


627

被折叠的 条评论
为什么被折叠?



