grep命令

使用grep命令可以查找文件内符合条件的字符串。
命令语法:

grep [选项] [查找模式][文件]

命令中各选项的含义如表所示。

表                                  grep命令选项含义

选项

含义

-E

模式是一个可扩展的正则表达式

-F

模式是一组由断行符分隔的定长字符串

-P

模式是一个Perl正则表达式

-b

在输出的每一行前显示包含匹配字符串的行在文件中的字节偏移量

-c

只显示匹配行的数量

-i

比较时不区分大小写

-h

抑制输出的文件名前缀

-l

只显示匹配的文件名

-L

只显示不匹配的文件名

-n

在输出前加上匹配字符串所在行的行号(文件首行行号为1)

-v

只显示不包含匹配字符的行

-x

强制模式仅完全匹配一行

-w

强制模式仅完全匹配字词

-e <模式>

用模式来进行匹配操作

-f <文件>

从文件中取得模式

-r

递归地,读取每个目录下的所有文件

-q

禁止一切正常输出

-I

强制认为该二进制文件没有包含任何搜寻样式

-s

取消错误消息

例:在文件kkk中搜索匹配字符“testfile”。

[root@rhel~]# cat kkk

akkk

testfile

oooo

ppppp

//查看文件kkk文件内容

[root@rhel~]# grep 'test file' kkk

testfile

例:在文件kkk中搜索匹配字符“es”,并且加上行号输出。

[root@rhel~]# grep -n es kkk

2:testfile

例:显示所有以d开头的文件中包含“test”的行数据内容。

[root@rhel~]# cat d1

1

test1

[root@rhel~]# cat d2

2

test2

//查看文件d1和d2的文件内容

[root@rhel~]# grep 'test' d*

d1:test1

d2:test2

例:在文件aa中显示所有包含至少有5个连续小写字符的行数据内容。

[root@rhel~]# cat aa

aaaaa

bbb

AAAAA

BBB

aaaaaa

//查看文件aa文件内容

[root@rhel~]# grep '[a-z]\{5\}' aa

aaaaa

aaaaaa

例:查找sshd进程信息。

[root@rhel ~]# ps -ef|grep sshd

root      1665    1  0 00:45 ?        00:00:00 /usr/sbin/sshd

root      2573 1665  0 00:48 ?        00:00:00 sshd: root@pts/1

root      2870 2578  0 01:01 pts/1    00:00:00 grep sshd

//在这里结合管道方式查找sshd进程信息

例7.6:在/root/aa文件中找出以b开头的行内容。

[root@rhel ~]# grep ^b /root/aa

bbb

例7.7:在/root/aa文件中输出不是以b开头的行内容。

[root@rhel ~]# grep -v ^b /root/aa

aaaaa

AAAAA

BBB

aaaaaa

例:在/root/kkk文件中输出以le结尾的行内容。

[root@rhel ~]# grep le$ /root/kkk

test file

例:在/root/kkk文件中显示包含es字符或者kk字符的行内容。

[root@rhel ~]# grep -E"es|kk" /root/kkk

akkk

test file

本文出自 “airfish2000” 博客,请务必保留此出处http://airfish2000.blog.51cto.com/10829608/1879118

Linux下的grep命令详解相关推荐

  1. linux下的arp命令详解

    我们先看一下linux下的arp命令(如果开始arp表中的内容为空的话,需要先对某台主机进行一个连接,例如ping一下目标主机来产生一个arp项 Linux Arp命令显示和修改地址解析协议(ARP) ...

  2. linux下的yum命令详解

    yum是干什么的 使用redhat,fedora的linuxer肯定都为rpm著名的dependency hell而头疼(这也是所有基于rpm发行版都有的问题).foo is needed by ba ...

  3. linux下ps ef命令详解,linux命令中ps -ef详解

    1.ps -ef表示bai查看全格式的全部进程. ps是linux下最常用的也是非常强大的进程查看命令,常配合管道命令 | 和查找命令 grep 同时执行来查看特定进程. 参数含义: -e 显示所有进 ...

  4. Linux三剑客之grep命令详解及相关实例

    grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用 ...

  5. Linux下的dig 命令详解

    在 UNIX 和 Linux 下,建议大家使用 dig 命令来代替 nslookup. dig 命令的功能比 nslookup 强大很多,不像 nslookkup 还得 set 来 set 去的,怪麻 ...

  6. linux下find,xargs命令详解和实例

    在我们平时的系统管理中,查找文件是时常需要的一个操作,在Linux系统中有2个命令是必须要掌握的,如果我们真正掌握了这个命令已经他的常用参数的话,我们可以在工作中游刃有余,下面是我在网上找到的一点资料 ...

  7. Linux下的mount命令详解

    mount命令用法 1.功能: 加载指定的文件系 统:mount可将指定设备中指定的文件系统加载到 Linux目录下(也就是挂载点).可将经常使用的设备写入文件/etc/fastab,以使系 统在每次 ...

  8. linux下的chroot命令详解,linux chroot 命令用法说明

    chroot,即 change root directory (更改 root 目录).在 linux 系统中,系统默认的目录结构都是以 /,即以根 (root) 开始的.而在使用 chroot 之后 ...

  9. Linux下的hostname命令详解

    1.临时修改: #hostname ***** //*****为修改的hostname 2.永久修改: # vi /etc/sysconfig/network NETWORKING=yes HOSTN ...

最新文章

  1. centOS 自动安装php
  2. 实现透明渐变的Activity
  3. spring beans源码解读之--BeanFactory的注册
  4. CentOS下设置服务自动启动的方法
  5. 高效CNN推理库、多款AlphaGo实现…你们喜欢的Github项目精选又来了!
  6. python字符串转float_令人困惑的python-无法将字符串转换为float
  7. 接收请求参数及数据回显 2021-04-26
  8. 从IT应用架构角度,畅谈双活数据中心容灾解决方案
  9. 吴恩达|机器学习作业5.0.偏差与方差
  10. UEditor实战分享(二)定制
  11. mysql 存储过程案列一个。
  12. One by One [ 1 x 1 ] Convolution - counter-intuitively useful
  13. 深入理解Sentinel如何构建Node调用树
  14. wifi连接过程抓包
  15. net实现基础的舆情监测系统思路
  16. Python索引设置
  17. odoo rest api 服务接口
  18. 【蓝桥杯试题】盾神与困难数独
  19. 水质检测 — TDS模块
  20. PMP学习笔记 第7章 项目成本管理

热门文章

  1. cmw500综合测试仪使用_宁波摆闸静电测试仪价格-老友网
  2. Java并发之同步的产生及解决
  3. mysql异步扩展_基于Swoole扩展开发异步高性能的MySQL代理服务器
  4. 谷歌社交平台新漏洞威胁千万用户隐私 将提早关闭
  5. Django model查询之F,Q操作
  6. 大型运输行业实战_day14_1_webserivce简单入门
  7. 【逆向工具】IDA使用5-( string、图形化与视图的切换、图形化显示反汇编地址、自动注释、标签使用)...
  8. Difference between prop and attr in different version of jquery
  9. Java 定义字符串数组
  10. 《转》 ImportError: No module named caffe 的解决方案