前言

经常会用到全文搜索这样的应用,Linux提供里一个grep工具,可以满足日常的全文搜索需求。

正文

使用管道搜索进程

一般我们需要在显示的结果中进行过滤,只关注我们需要的内容即可,通过一些参数控制我们需求的更多或者更加精细的内容,就可以通过参数进行调配。下面展示一下显示所有进程,及只获取mysql相关的行信息:

  1. # 显示所有进程
  2. ps -ef
  3. # 只显示符合搜索条件的进程
  4. ps -ef | grep mysql

参数详解

1. 匹配单词,默认情况

man pmset |grep -w "a"

2. 只显示匹配的关键字,不显示行内全部内容

man pmset |grep -o "witch"

3. 显示符合条件前后的行

  • -C 3 符合行及上下3行
  • -B 3 符合行及上面3行
  • -A 3 符合行及下面3行
    # 显示 符合行及下面2行
    man pmset |grep -A 2 "witch"
    

    4. 版本及升级

    查看版本
    grep -V
    # grep (BSD grep) 2.5.1-FreeBSD
    
    升级
    # 暂不知
    

    5. 排除内容

    man pmset |grep --color=auto #匹配字符串着色显示
    

    6. 匹配字符串着色显示

    man pmset |grep --color=auto "a"
    

    7. 匹配多个

    man pmset |grep -e "a" -e "A"
    

    8. 排除内容

    man pmset |grep -v "a"
    

    9. 不区分大小写

    man pmset |grep -i "a"
    # 相当于
    man pmset |grep -e "a" -e "A"
    

    10. 显示行号

    man pmset |grep -n "a"
    

    11. 使用扩展正则表达式

    man pmset |grep -E "[a-l]{7,}"
    # 相当于egrep
    man pmset |egrep "[a-l]{7,}"
    

    12. 显示匹配到的行数

    man pmset |grep -c "a"