`

linux grep用法大全

 
阅读更多

原文:http://orchidllh.itpub.net/post/4020/24280


在Unix中经常会用到grep去选取所需要的信息,用好grep有时可以到达意想不到的效果。  


Grep : g (globally) search for a re (regular expression_r_r ) and p (print ) the results.

1、参数:
-I :忽略大小写
-c :打印匹配的行数
-l :从多个文件中查找包含匹配项
-v :查找不包含匹配项的行
-n:打印包含匹配项的行和行标

2、RE(正则表达式)
\ 忽略正则表达式中特殊字符的原有含义
^ 匹配正则表达式的开始行
$ 匹配正则表达式的结束行
\< 从匹配正则表达式的行开始
\>; 到匹配正则表达式的行结束
[ ] 单个字符;如[A] 即A符合要求
[ - ] 范围 ;如[A-Z]即A,B,C一直到Z都符合要求
. 所有的单个字符
* 所有字符,长度可以为0

# cat zhao.conf(显示我们所查文件的内容)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643


# grep -c "48" zhao.conf(统计所有以“48”字符开头的行有多少)

# grep -i "May" zhao.conf(不区分大小写查找“May”所有的行)
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep -n "48" zhao.conf(显示行号;显示匹配字符“48”所在的行的行号)
1:48 Dec 3BC1997 LPSX 68.00 LVX2A 138
2:483 Sept 5AP1996 USP 65.00 LVX2C 189
5:484 nov 7PL1996 CAD 49.00 PLV2C 234
6:487 may 5PA1998 USP 37.00 KVM9D 644

# grep -ni "may" zhao.conf(显示行号;显示匹配字符“may”所在的行的行号,不区分大小写)

# grep -v "48" zhao.conf(显示输出没有字符“48”所有的行)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "471" zhao.conf(显示输出字符“471”所在的行)
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "48>" zhao.conf(精确显示输出字符“48”所在的行)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138

# grep "48<tab>" zhao.conf(显示输出以字符“48”开头,并在字符“48”后是一个tab键所在的行
注:tab键,安一下tab键即可;和精确显示输出的结果是相同的)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138

# grep "48[34]" zhao.conf(显示输出以字符“48”开头,第三个字符是“3”或是“4”的所有的行)
483 Sept 5AP1996 USP 65.00 LVX2C 189
484 nov 7PL1996 CAD 49.00 PLV2C 234

# grep '48[34]' zhao.conf(注意使用单引号(‘’)和使用双引号(“”)在Solaris8中输出的结果是一样的;
即:单引号、和双引号是通用的,只要你养成一种习惯就好)
483 Sept 5AP1996 USP 65.00 LVX2C 189
484 nov 7PL1996 CAD 49.00 PLV2C 234

# grep "^[^48]" zhao.conf(显示输出行首不是字符“48”的行)
219 dec 2CC1999 CAD 23.00 PLV2C 68

# grep "[Mm]ay" zhao.conf(设置大小写查找:显示输出第一个字符以“M”或“m”开头,以字符“ay”结束的行)
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# cat zhao.conf(再次显示我们所使用的文件的内容)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "K...D" zhao.conf(显示输出第一个字符是“K”,第二、三、四是任意字符,第五个字符是“D”所在的行)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "[A-Z][A-Z][A-Z][9]D" zhao.conf(显示输出第一个字符的范围是“A-D”,第二个字符的范围是“A-D”,
第三个字符的范围是“A-D”,第四个字符是“9”,第五个字符的是“D”,所有的行:已知所查字符串的长度为5位)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
487 may 5PA1998 USP 37.00 KVM9D 644

# grep "5..1998" zhao.conf
487 may 5PA1998 USP 37.00 KVM9D 644

# grep "[35]..1998" zhao.conf(显示输出第一个字符是“3”或“5”,第二、三个字符是任意,以1998结尾的所 有行;已知所查字符串的长度是7位)
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
487 may 5PA1998 USP 37.00 KVM9D 644
#

# grep "4{2,}" zhao.conf(模式出现几率查找:显示输出字符“4”至少重复出现两次的所有行)
487 may 5PA1998 USP 37.00 KVM9D 644

# grep "9{3,}" zhao.conf(模式出现几率查找:显示输出字符“9”至少重复出现三次的所有行)
219 dec 2CC1999 CAD 23.00 PLV2C 68
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep "9{2,3}" zhao.conf(模式出现几率查找:显示输出字符“9”重复出现的次数在一定范围内(重复出现2 次或3次)所有行)
48 Dec 3BC1997 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
487 may 5PA1998 USP 37.00 KVM9D 644
471 May 7Zh1999 UDP 37.00 KV30D 643

# grep -n "^$" zhao.conf(显示输出空行的行号)

分享到:
评论

相关推荐

    linux grep命令详解_linux_grep_

    ### grep基本用法 1. **基本格式**:`grep [选项] [模式] [文件名]` - `模式`:可以是简单的文本字符串或者正则表达式。 - `文件名`:要搜索的文件,可以是单个文件或多个文件,甚至可以是通配符表示的一组文件。...

    linuxgrep命令.pdf

    Linux grep 命令是用于搜索文本的工具,它根据提供的模式(pattern),在指定文件中搜索匹配该模式的字符串。该命令是Linux系统中用于文本搜索的核心工具之一,具有强大的模式匹配能力。 1. 基本用法: grep ...

    Linux Grep命令的详细使用方法

    Linux Grep 命令的详细使用方法 Linux Grep 命令是 Linux 系统中最常用的命令之一,它允许用户在文本文件中搜索指定的字符串。下面是关于 Grep 命令的使用方法和参数的详细介绍。 基本用法 Grep 命令的基本用法是...

    最全的linux下grep命令的使用方法

    Linux 下 Grep 命令的使用方法 Grep 命令是 Linux 中一个功能强大且广泛使用的命令,它可以在文件中搜索包含指定模式的行,并将其输出出来。Grep 命令的基本格式为:`grep [选项]... PATTERN [FILE]...` 在使用 ...

    LINUX下grep、sed、gawk汇总

    它的基本用法是`grep [选项] [模式] [文件]`。grep支持正则表达式,可以匹配包含指定模式的行。例如,要搜索日志文件中包含"error"的行,可以使用`grep "error" log.txt`。更复杂的使用包括使用 `-i` 忽略大小写,`-...

    Linux grep 命令用法详解

    Linux grep 命令 Linux grep 命令用于查找文件里符合条件的字符串。 grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来...

    Linux Grep命令使用的详细介绍

    Linux Grep命令是Linux系统中一个非常重要的文本搜索工具,其全称为“global search regular expression(RE) and print out the line”...熟练掌握grep命令及其正则表达式用法,能够极大地提升Linux环境下的工作效率。

    grep用法,grep用法,grep用法,grep用法,grep用法,

    以下是关于grep用法的详细讲解。 1. **基本用法** grep的基本格式是`grep [选项] 模式 文件`。例如,要在文件`example.txt`中查找包含“hello”的行,可以使用`grep "hello" example.txt`。 2. **选项** - `-i`...

    linux grep sed awk命令详解

    ### Linux grep sed awk命令详解 #### 一、grep命令详解 **grep** 是一个用于查找文件里符合条件的字符串的强大工具。它可以对文件进行快速搜索,找出含有特定模式的行。 - **基本语法**:`grep [选项] 模式 文件...

    linux中grep命令的使用.docx

    Linux 中 grep 命令的使用 grep 命令是 Unix家族中的一种强大的文本搜索工具,能够使用正则表达式搜索文本,并把匹配的行打印出来。grep 命令的全称是 Global Regular Expression Print,表示全局正则表达式版本,...

    windows-cmd-linux-grep等命令扩充

    总结来说,通过安装和配置Cygwin、MSYS2或Git for Windows,Windows用户可以在CMD中享受到与Linux相似的命令行体验,包括使用强大的“grep”命令进行文本搜索。这样的扩充对于那些习惯于Linux命令行或者需要在不同...

    Linux中grep命令参数及用法详解---linux管道命令grep

    ### Linux中的`grep`命令参数及用法详解 `grep`是Linux系统中非常重要的文本搜索工具之一,它能够帮助用户高效地查找文件中的特定模式或字符串。...希望这篇详解能帮助读者更好地理解和掌握`grep`命令的使用方法。

    Linux系统 grep命令用法详解.doc

    通过理解并掌握`grep`命令的用法,可以大大提高Linux系统中的数据处理效率。下面将详细介绍`grep`命令的基本语法、常用选项以及实际应用案例。 `grep`命令的基本语法如下: ``` grep [选项...] 参数... ``` 其中,`...

    win10可用,windows下的grep命令行 用法同linux

    在Windows操作系统中,通常我们使用内置的`findstr`命令来搜索文本,但如果你习惯于Linux环境中的`grep`命令,现在也有方法在Win10系统中实现类似的功能。这个压缩包提供了一个适用于Windows的`grep`命令行工具,...

    Linux中利用grep命令如何检索文件内容详解

    ### Linux中利用grep命令检索文件内容详解 #### 前言 在Linux系统中,进行文件内容搜索是一项常见的任务。为了高效地完成这项任务,Linux提供了多种工具,其中`grep`命令是最为常用的一种。本篇文章将深入探讨如何...

    grep是linux中使用最广泛的命令

    为了更好地理解grep的使用方法,我们来看几个具体的例子: ##### 例1:查找包含特定数字的行 假设有一个名为`data`的文件,内容如下: ``` 48Dec3BC1997LPSX68.00LVX2A138 483Sept5AP1996USP65.00LVX2C189 47Oct3ZL...

    linuxgrep命令[参考].pdf

    【Linux grep命令详解】 在Linux操作系统中,grep命令是一个极其重要的工具,主要用于在文本文件中查找含有特定模式的行。其强大的功能在于它支持正则表达式,这使得grep能够处理复杂的文本匹配需求。grep全称是...

    linux grep

    以上就是关于Linux下`grep`命令的一些基本用法及高级应用。通过灵活运用这些命令,用户可以在日常工作中高效地处理各种文本数据。需要注意的是,在使用`grep`时,确保输入的字符串或模式正确无误是非常重要的。此外...

Global site tag (gtag.js) - Google Analytics