linux下grep命令使用

时间:2022-01-02 22:07:03

语法

grep [-abcEFGhHilLnqrsvVwxy] [-A<显示列数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录]

参数

-a或--text 不要忽略二进制的数据。
-A<显示列数> 除了显示符合范本样式的那一列之外并显示该列之后的内容。
-b 在显示符合范本样式的那一列之前,标示出该列第一个字符的位编号。
-B<显示列数> 除了显示符合范本样式的那一列之外,并显示该列之前的内容。
-c 计算符合范本样式的列数。
-C<显示列数> 除了显示符合范本样式的那一列之外,并显示该列之前的内容。
-d<进行动作> 当指定要查找的是目录而非文件时使用这个参数。
-e<范本样式> 指定字符串作为查找文件内容的范本样式。
-E 将范本样式为延伸的普通表示法来使用。
-f<范本文件> 指定范本文件,其内容含有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每列一个范本样式。
-F

将范本样式是为固定字符串的列表。

-G 将范本样式视为普通的表示法来使用。
-h 在显示符合范本样式的那一列之前,不标示该列所属的文件名称。
-H 在显示符合范本样式的那一列之前,表示该列所属的文件名称。
-i 忽略字符大小写的差别。
-l(小写L) 列出文件内容符合指定的范本样式的名称。
-L 列出文件内容不符合指定的范本样式的文件名称。
-n 在显示符合范本样式的那一列之前,标示出该列的列数编号。
-q 不显示任何信息。
-r 递归查找,此参数的效果和指定“-d  rdcurse”参数相同。
-s 不显示错误信息。
-v 反转查找。
-V 显示版本信息。
-w 只显示全字符合的列。
-x 只显示全列符合的列。
-y

此参数的效果和指定“-i”参数相同。

--help 在线帮助。

示例

grep test *file    //在当前目录中,查找后缀有file字样的文件中包含test字符串的文件,并打印出该字符串的行。
grep -r update /etc/acpi    //以递归方式查找/etc/acpi目录下包含update的文件
grep -v test *test*    //查找文件名中包含test的文件不包含test的行