linux grep命令语法

493 查看

grep命令

文件过滤分割与合并,grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

参数

-a      不要忽略二进制数据。
-A      <显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容。
-b      在显示符合范本样式的那一行之外,并显示该行之前的内容。
-c      计算符合范本样式的列数。
-C      <显示列数>或-<显示列数>      除了显示符合范本样式的那一列之外,并显示该列之前后的内容。
-d      <进行动作>      当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作。
-e      <范本样式>      指定字符串作为查找文件内容的范本样式。
-E      将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。
-f      <范本文件>      指定范本文件,其内容有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每一列的范本样式。
-F      将范本样式视为固定字符串的列表。
-G      将范本样式视为普通的表示法来使用。
-h      在显示符合范本样式的那一列之前,不标示该列所属的文件名称。
-H      在显示符合范本样式的那一列之前,标示该列的文件名称。
-i      胡列字符大小写的差别。
-l      列出文件内容符合指定的范本样式的文件名称。
-L      列出文件内容不符合指定的范本样式的文件名称。
-n      在显示符合范本样式的那一列之前,标示出该列的编号。
-q      不显示任何信息。
-R/-r   此参数的效果和指定&ldquo;-d recurse&rdquo;参数相同。
-s      不显示错误信息。
-v      反转查找。
-w      只显示全字符合的列。
-x      只显示全列符合的列。
-y      此参数效果跟&ldquo;-i&rdquo;相同。
-o      只输出文件中匹配到的部分。

grep命令常见用法

在文件中搜索一个单词,命令会返回一个包含“duweixin.net”的文本行

grep duweixin.net file.txt
grep "duweixin.net" file.txt

输出包含匹配字符串的行数 -n 选项

grep "duweixin" -n file.txt

cat file.txt | grep "duweixin" -n
多个文件
grep "duweixin" -n file_1.txt file_2.txt