zoukankan      html  css  js  c++  java
  • linux命令之grep用法

      grep是linux中很常用的一个命令,主要功能就是进行字符串数据的对比,能使用正则表达式搜索文本,并将符合用户需求的字符串打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。grep在数据中查找出一个字符串时,是以整行为单位来进行数据选取的。

    (1)命令格式

      grep [cinvs] 'patten' filename

    (2)主要参数

    -c:只输出匹配行的计数。
    -i:不区分大小写(只适用于单字符)。
    -n:显示匹配行及行号。
    -s:不显示不存在或无匹配文本的错误信息。
    -v:显示不包含匹配文本的所有行。

    (3)patten正则表达式主要参数

      :转义字符,忽略正则表达式中特殊字符的原有含义。
    ^ :匹配以某个字符串开始的行。
    $ : 匹配以某个字符串结束的行。
    <:从匹配正则表达式的行开始。
    >:到匹配正则表达式的行结束。
    [ ]:在[]内个某单个字符,如[A]即A符合要求 。
    [ - ] :属于[ - ]所标记的范围字符,如[A-Z],即A、B、C一直到Z都符合要求 。
    .  :表示一定有1个任意字符。
    * :重复前面0个或多个字符。

      关于正则表达式的参数还有很多,这里这是列出很少的一部分,具体大家可以参照正则表达式的详解。

    (4)实例

      要用好grep这个工具,其实就是要写好正则表达式,所以这里不对grep的所有功能进行实例讲解,只列几个例子,讲解一个正则表达式的写法。

    $ ls -l | grep '^a'

    通过管道过滤ls -l输出的内容,只显示以a开头的行。

    $ grep 'test' aa bb cc

    显示在aa,bb,cc文件中匹配test的行。

    $ grep '{5}' aa

    显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

    $ grep 'w(es)t.*' aa

    显示所有包含west,且之后含有零个或多个任意字符的行。

  • 相关阅读:
    穷举法和搜索法的统计三角形
    2015.5.21 Core Java Volume 1
    我喜欢出发
    MeshLab中画面在前面加个f的代码
    【axel帮助代码】为了在单位正方形里面画一个洞 ,网上获取了此代码。
    uniapp 发起网络请求
    qt 取进程列表,读写内存, 写字节集
    qt 注册热键
    qt 获取窗口句柄的线程id和进程id GetWindowThreadProcessId
    qt 向窗口发送消息,键盘输入事件
  • 原文地址:https://www.cnblogs.com/chris-oil/p/6909055.html
Copyright © 2011-2022 走看看