grep 命令学习总结

发表于: lnmp | 作者: | 日期: 2013/4/09 01:04
标签:

grep命令用于在指定文件中查找与模式匹配的行,并将匹配的行显示在标准输出上。如果没有指定文件,则从标准输入中读取。当在多个文件中进行查找中,将在每一行输出之前加上文件名。在搜索的文件名中允许使用通配符。
语法:

grep [参数] 查找模式 文件名 [文件名]

参数:
-c:
只显示匹配行的行数
-i:
匹配时不区分大小写,默认情况下匹配时区分大小写
-h:
在多个文件中查找时,输出行前不显示文件名
-n:
在输出前加上匹配串所在行的行号(文件首行行号为1)
-v:
只显示不包含匹配串的行。
-f filename:
从指定文件中获取搜索模式,每行一个搜索模式项
例子:

[root@localhost logs]# grep AbstractController *.log

翻译:在当前目录下的所有log文件中中查找AbstractController字符串
注意:搜索的字符串如果没有空格则可以不用引号,如有引号则需要空格,后面有例子。
例子:

[root@localhost etc]# grep mysql /etc/passwd
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash

翻译:将系统帐号中文件包含mysql的行显示出来。
当搜索模式中包含空格是,要把搜索模式用单引号括起来。
例子:

[root@localhso user1]# cat > dialog
your name is:
linux



[root@localhost user1]# grep ‘your name’ dialog
your name is:

在有多个搜索模式时,可以将这些搜索模式写入文件中,利用-f参数从文件中读取搜索模式项。
例子:
首先把搜索模式写入mode.txt文件中:

[root@localhost user1]# cat > mode.txt
name
lin*


接下来使用该文件中的模式进行搜索:

【root@localhost user1】# grep –f mode.txt dialog
your name is:
linux

[整理自网络]

: https://blog.darkmi.com/2013/04/09/163.html

本文相关评论 - 1条评论都没有呢
Post a comment now » 本文目前不可评论

No comments yet.

Sorry, the comment form is closed at this time.