grep 文本搜索工具
(global search regular expression(RE) and print out the line)
常用参数:
-w (word regexp)匹配整词
-x (line regexp)匹配整行
-i(ignore case) 不区分大小写
-E 使用正则表达式
-r 递归调用
-c (count)只输出匹配行数量
-n (line number) 显示匹配行及行号
-H 每一个匹配项显示文件名
-m[num] (max num) 最大匹配次数
-o (only match) 只输出匹配项
-l 只打印包含搜索项的文件名
-A[num] 打印匹配内容前num行
-B[num] 打印匹配内容后num行
-C[num] 打印匹配内容前后num行
测试文本内容,两个文件(a.txt,b.html)内容一致
I am sailing, I am sailing
home again 'cross the sea.
I am sailing stormy waters,
to be near you, to be free.
I am flying, I am flying
like a bird 'cross the sky.
I am flying
passing high clouds,
to be near you,
to be free.
Can you hear me,
can you hear me,
through the dark night far away?
I am dying,
forever crying, to be with you;
who can say?
Can you hear me,
#默认搜索
> grep "flying" a.txt
I am flying, I am flying
I am flying
#查看匹次数
> grep -c "am" a.txt
5
#打印匹配行号
> grep -n "am" a.txt
1:I am sailing, I am sailing
3:I am sailing stormy waters,
5:I am flying, I am flying
7:I am flying
14:I am dying,
#完全匹配单词,无输出
> grep -nw "sail" a.txt
#完全匹配单词
> grep -nw "sailing" a.txt
1:I am sailing, I am sailing
3:I am sailing stormy waters,
#匹配整行
> grep -nx "sailing" a.txt
> grep -nx "I am flying" a.txt
7:I am flying
#-i不区分大小写
> grep -n "AM" a.txt
> grep -ni "AM" a.txt
1:I am sailing, I am sailing
3:I am sailing stormy waters,
5:I am flying, I am flying
7:I am flying
14:I am dying,
#显示匹配文件名
> grep -H "am" a.txt
a.txt:I am sailing, I am sailing
a.txt:I am sailing stormy waters,
a.txt:I am flying, I am flying
a.txt:I am flying
a.txt:I am dying
#最大匹配2次结束
> grep -H -m2 "am" a.txt
a.txt:I am sailing, I am sailing
a.txt:I am sailing stormy waters,
#使用正则
> grep -E "fly+" a.txt
I am flying, I am flying
I am flying
#-o只显示匹配内容
> grep -E "fly\S+" -o a.txt
flying,
flying
flying
#显示匹配内容前后行控制
> grep -n "high" a.txt
8:passing high clouds,
#显示匹配内容的前三行
> grep -n -A3 "high" a.txt
8:passing high clouds,
9-to be near you,
10-to be free.
11-Can you hear me,
#显示匹配内容的后三行
> grep -n -B3 "high" a.txt
5-I am flying, I am flying
6-like a bird 'cross the sky.
7-I am flying
8:passing high clouds,
#显示匹配内容的前后三行
> grep -n -C3 "high" a.txt
5-I am flying, I am flying
6-like a bird 'cross the sky.
7-I am flying
8:passing high clouds,
9-to be near you,
10-to be free.
11-Can you hear me,
#-r递归查询
> grep -H "high" -r . --include *.txt
./a.txt:passing high clouds,
#查询多个匹配项
> grep -e "high" -e "near" a.txt
to be near you, to be free.
passing high clouds,
to be near you,
#显示匹配文件名
> grep -l "high" *
a.txt
b.html
分享到:
相关推荐
`grep` 是 Linux 下一款强大的文本搜索工具,可以在文件中搜索固定字符串或者使用正则表达式搜索,是日常开发、运维工作中非常实用的一个命令。本文将详细介绍 `grep` 的常用选项及其功能。 #### 1. 基本概念 `grep...
Linux中的`grep`命令是文本处理工具中的重要一员,它在系统管理和日常工作中发挥着巨大的作用。`grep`源自于“global regular expression print”,即全局正则表达式打印,它的主要功能是从输入流(通常是文件或管道...
Linux grep 命令是用于搜索文本的工具,它根据提供的模式(pattern),在指定文件中搜索匹配该模式的字符串。该命令是Linux系统中用于文本搜索的核心工具之一,具有强大的模式匹配能力。 1. 基本用法: grep ...
“grep”命令在Linux中用于在文件中搜索特定的文本模式。它的基本语法是`grep [选项] 模式 [文件]`,其中选项可以设定搜索行为,如 `-i` 忽略大小写,`-v` 反向匹配,`-r` 递归搜索目录等。模式可以是简单的字符串,...
Linux 中的 grep 命令是一种功能强大的文本搜索工具,通过模式匹配来查找文件中的内容。grep 命令可以根据用户的需求来查找特定的字符串、数字或正则表达式。 grep 命令的基本格式 grep [options] pattern [file] ...
find 命令用于从目录树中查找与搜索条件匹配的文件,而 grep 命令用于查找输入流中包含模板文本的行。例如,使用 find /etc -name * | xargs grep wl0505 命令可以查找 etc 目录下含有字符串"wl0505"的文件。 grep ...
### Linux grep sed awk命令详解 #### 一、grep命令详解 **grep** 是一个用于查找文件里符合条件的字符串的强大工具。它可以对文件进行快速搜索,找出含有特定模式的行。 - **基本语法**:`grep [选项] 模式 文件...
Linux Grep命令是Linux系统中一个非常重要的工具,主要用于在文本文件中搜索匹配特定模式的行。grep全称为“global search regular expression(RE) and print out the line”,即全面搜索正则表达式并打印出匹配的行...
### Linux中利用grep命令检索文件内容详解 #### 前言 在Linux系统中,进行文件内容搜索是一项常见的任务。为了高效地完成这项任务,Linux提供了多种工具,其中`grep`命令是最为常用的一种。本篇文章将深入探讨如何...
Linux中的`grep`命令是日常系统管理和数据处理中不可或缺的工具,它用于在文本文件或标准输入中搜索指定模式,并打印匹配行。`grep`的名字来源于"Global Regular Expression Print",意味着全局正则表达式打印。现在...
Grep 命令是 Linux 中一个功能强大且广泛使用的命令,它可以在文件中搜索包含指定模式的行,并将其输出出来。Grep 命令的基本格式为:`grep [选项]... PATTERN [FILE]...` 在使用 Grep 命令时,我们可以使用各种...
grep 命令搜索多个字符串 grep 命令是 Linux 系统中一...grep 命令搜索多个字符串是 Linux 系统中一个非常有用的功能,可以满足各种搜索需求。但是,需要注意正则表达式的使用和选项的选择,以便达到预期的搜索结果。
grep命令是Linux系统中非常重要的文本搜索工具,它可以对文件中的内容进行搜索,并根据用户的搜索模式,显示出包含该模式的行。grep是Global Regular Expression Print的缩写,它支持POSIX基本正则表达式和扩展正则...
Linux Grep 命令是 Linux 系统中最常用的命令之一,它允许用户在文本文件中搜索指定的字符串。下面是关于 Grep 命令的使用方法和参数的详细介绍。 基本用法 Grep 命令的基本用法是 `grep 模式 文件名`,其中 `模式...
本文档详细介绍了 Linux 命令大全搜索工具,涵盖了 Linux 系统中常用的命令、工具和功能,旨在帮助用户快速查找和使用相关命令。 Linux 命令大全搜索工具提供了一个详细的命令列表,包括 A series 命令、apachectl...
Linux系统中的`grep`命令是Linux命令行环境中用于搜索文件内容的强大工具,它能帮助用户快速定位和筛选出含有特定关键词或模式的行。通过理解并掌握`grep`命令的用法,可以大大提高Linux系统中的数据处理效率。下面...