正则表达式—grep的用法详解

grep与sed、awk共称为文字处理三剑客,支持正则表达式语句,具体用法如下:

grep [options] PATTERN [file]
    #常用选项:
    --color=auto  #对匹配到的文本着色显示
    -v       #取反,显示未被PATTERN匹配到的行
    -i       #忽略字符大小写
    -o       #只显示被PATTERN匹配到的字符
    -A#       #匹配到字符,后#行
    -B#       #匹配到的字符,前#行
    -E       #使用egrep

1、–color=auto对匹配的文本着色显示,

[root@Centos6]# grep --color=auto 'root' /etc/passwd
root:x:0:0:root:/root:/bin/bash     #root会被着色显示,好像这里面弄不出效果

2、-v取反,显未被匹配到的行

[root@Centos6 ~]# grep -v 'defaults' /etc/fstab
# /etc/fstab
# Created by anaconda on Wed Jun 22 22:20:20 2016
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
devpts     /dev/pts       devpts  gid=5,mode=620  0 0

3、-i忽略字符大小写

[root@Centos6 ~]# grep -i 'DEFAULTS' /etc/fstab
/dev/mapper/vg_centos6-lv_home /home ext4    defaults        1 2
/dev/mapper/vg_centos6-lv_swap swap  swap    defaults        0 0
proc                   /proc  proc   defaults        0 0

4、-o只显示被匹配到的字符串

[root@Centos6 ~]# grep -o -i 'root' /etc/passwd
root
root
root
root

5、-A#匹配到的字符后#行

[root@Centos6 ~]# grep -A2 -i 'root' /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
--
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin

6、-B#区配到的字符前#行,使用-n,在区配的结果前显示行号

[root@Centos6 ~]# grep -B2 -i -n 'root' /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
--
9-mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10-uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
11:operator:x:11:0:operator:/root:/sbin/nologin

7、-c显示匹配到的次数

[root@Centos6 ~]# grep -c 'nologin' /etc/passwd
26

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/21083

(0)
N21-沉舟N21-沉舟
上一篇 2016-07-04
下一篇 2016-07-04

相关推荐

  • 网络配置——命令家族

    Linux网络属性配置命令: ifcfg家族:ifconfig,route,netstat ifconfig命令:接口及地址查看和管理          ·ifconfig [INTERFACE]       &nbsp…

    Linux干货 2016-09-07
  • 常用命令

    基本命令和系统命令

    Linux干货 2017-11-30
  • lvs集群学习笔记之原理

    lvs集群学习笔记之原理 lvs集群学习笔记之原理 集群 负载均衡 lvs 原理 lvs集群学习笔记之原理 什么是集群 什么是负载均衡 负载均衡解决方案 lvs简介 lvs内核空间模型 lvs特点 lvs实现方式 lvs实现方式之nat模型 lvs实现方式之dr lvs实现方式之tun lvs实现方式之FULLNAT lvs之算法 静态算法   &…

    Linux干货 2017-01-03
  • 计算机的组成及功能

    计算机的组成及功能 计算机的组成 计算机的组成,简单地来说,包含硬件和软件两部分,两者相辅相成,缺一不可。在计算机网络发展的今天,网络也已成为计算机不可或缺的一部分。 计算机硬件 可以分为如下5个部分: 控制器 负责对程序的控制信息进行分析,控制并协调输入、输出操作或内存访问,如CPU 运算器 负责数据的算术运算和逻辑运算,如C…

    Linux干货 2016-10-29
  • 软链接与硬链接的分析

    Linux引用硬链接与软链接,是为了实现文件的共享,更有隐藏文件路径、增加权限安全及节省存储等的好处。很多新手不知道软链接与硬链接的区别,今天大家一起总结它们的区别吧^_^ 一,硬链接 硬链接的特性可以体现出什么是硬链接: 通过索引节点来进行链接,文件要有相同的inode及data block 不允许跨分区创建 只有在同一文件系统中的文件之间才可以,不能交叉…

    2017-07-22
  • test

    test

    Linux干货 2017-11-26