• grep的使用【转】


    grep的作用是显示匹配一个或多个模式的文本行。时常会作为管道(|)的第一步,以便对匹配的数据作进一步处理。grep常用于查找和替换文本的。在传统上,grep有3个版本:grep、egrep(扩展grep)和fgrep(快速grep)。现在grep已经整合成一个,选项:-E和-F分别对应egrep和fgrep。另外还有非标准的agrep。

    对于压缩文件,则应使用zgrep, zegrep以及zfgrep,当然对于未压缩文件的也可以使用。功能上类似于grep。grep在Unix、Linux以及windows上均有,这里 仅对Linux上的grep进行简单略述。grep常结合正则表达式使用,但这里并不讲述正则表达式的内容。

    语法:

    1、grep [OPTIONS] PATTERN [FILE...]

    2、grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

    示例:

    1、使用grep查看root的登录信息行

    $ who | grep -F root

    $ who | grep root

    2、不显示以a开头的行

    $ ls -l | grep -v '^a'

    3、忽略模式匹配大小写

    $ grep -i ‘abc’ file.txt

    grep默认情况下区分大小写的。

    4、将/dev/null作为第二个文件参数使用

    $ grep 'abc$' file.txt /dev/null

    5、使用文件路径递归查找与模式匹配的文件的文件名

    $ grep -ril ‘abc’ /etc/passwd

    6、高亮匹配字

    $ man grep | grep  --color -e --color

    常用选项:

    -E 使用正则表达式进行匹配。grep -E可取代传统的egrep。

    -F 使用固定字符串进行匹配。grep -F可取代传统的fgrep命令。

    -e PATTERN, --regexp=PATTERN 可指定参数为模式,用于防止以“-”开头的模式被解释为命令选项。多模式可使用换行字符分隔。

    -f FILE, --file=FILE 从FILE文件读取模式做匹配。

    -i 模式匹配时忽略字母大小写差异。

    -w 只显示单词严格匹配的行。

    -x 只显示整行严格匹配的行。

    -s 不显示错误信息。通常与-q并用。

    -v 显示不匹配模式的行。

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

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

    -c 只显示匹配行的数量。

    -h 在查找多个文件时,指示grep不要将文件名加入到输出之前。

    -l 列出匹配模式的文件名称,而不是打印匹配的行。

    -q 静默地。如果模式成功匹配,则grep会成功的离开,而不讲匹配的行写入标准输出;否则即是不成功。

    -r 递归搜索目录

    PS:

    在最后的100行中查找:tail -n 100 filename | grep XXX

    从前往后查找: cat xxx | grep xx

    从后往前查找:tac xxx | grep xx

  • 相关阅读:
    学习使用linux下tags文件
    uboot常用命令详解
    U-boot中TFTP 解释
    eth0: ERROR while getting interface flags: No such device 没有eth0 有其他的eth
    取消挂载 umount 时出现的 “Device is busy”
    Linux的log日志功能
    oracle的安装
    SOA架构设计分析
    立方体模型
    质量属性的六个常见属性场景(淘宝网)
  • 原文地址:https://www.cnblogs.com/luojinping/p/3380771.html
Copyright © 2020-2023  润新知