Grep:搜索文件内匹配指定内容的行

常用的Grep搜索方法:

1. grep "普通搜索内容" file( 或者 cat file|grep "普通搜索内容")

  • grep 'java' file : 查询带java的行
  • grep -c 'java' file :计算带-c的行数
  • grep -n 'java' file: 查询结果中显示行数
  • grep -i 'java' file :忽略大小写搜索
  • grep -v 'java' file : 过滤掉涵盖java内容的行
  • grep -ivn 'java' file: 多种参数可以结合使用

2. grep -E "正则表达式" file

  • ^content : 以content开头的行
  • $content :   以content结尾的行
  • . : 匹配任意单字符
  • .+ : 匹配任意多个字符
  • .* :匹配0或多个字符
  • [0-9a-z]:匹配任意数字字母
  • (linux)+: 匹配多次出现linux单词的行
  • (linux){2}: 匹配linux单词出现了2次的行
  • (linux){2,4}: 匹配linux单词出现了3次的行
  • (linux){2,}:匹配linux单词出现了2次以上的行
  • (.*linux.*){2}: 匹配涵盖2个linux字符的单词的行
  • \ : 转义符

实际例子:

grep -E "09:[0-5][0-9]:[0-5][0-9]" file: 查询出09:00:00到09:59:59之间的日志

grep -Eni '(.+center.+){6}' TestSummaryReport.html: 解析Html里含盖6个center的行(通过识别布局元素找到指定的行来进一步解析html内容)

awk 用于横向分割获取内容

awk '{print $0}' file: 查找出文件中的每一列,$0代表每一列

awk '{print $1"\t"$7}' file: 查找出文件中的第一列和第七列,并且之间用制表符分割

awk -F: '{print $1,$3,$4}' file: 以:为分隔符打印出第1,3,4列,并且列之间用空格分割

awk -F'<td align="center">' '{print $4}' test.html :以<td align="center">为分隔符打印出第4列内容(可用来进行网页解析),-F后面加上'XX'表示以XX作为分隔符.

Linux基础:Grep查询&AWK查询的更多相关文章

  1. Linux三剑客grep、awk和sed

    grep,sed 和 awk是Linux/Unix 系统中常用的三个文本处理的命令行工具,称为文本处理三剑客.本文将简要介绍这三个命令并给出基本用法. 管道 在介绍这两个命令之前,有必要介绍一下Uni ...

  2. Linux三剑客grep/sed/awk

    grep/sed/awk被称为linux的“三剑客” grep更适合单纯的查找或匹配文本: sed更适合编辑匹配到的文本: awk更适合格式化文本,对文本进行较复杂各式处理: Grep --color ...

  3. Linux三剑客grep、awk、sed

    何为Linux三剑客? 第一个剑客是 grep,grep 会根据正则表达式查找相关内容并打印对应的数据. 第二个剑客是 awk,awk 的名字来源于三个作者的名字简称,它可以根据定位到的数据行处理其中 ...

  4. linux三剑客grep|sed|awk实践

    最好先学习正则表达式的基本用法,以及正则表达式BREs,EREs,PREs的区别 此坑待填 grep sed awk

  5. 13、Linux基础--grep、sed、awk三剑客综合运用

    考试 1.找出/proc/meminfo文件中以s开头的行,至少用三种方式忽略大小写 [root@localhost ~]# grep -E '^[sS]' /proc/meminfo [root@l ...

  6. Linux基础命令---host域名查询工具

    host host是一个常用的DNS查询工具,经常用来查询域名.检查域名解析是否正确. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.   1.语法       ...

  7. 【linux基础】cuDNN版本查询

    参考 1. 查看cudnn版本; 完

  8. Linux命令-grep,sed,awk

    grep (global search regular expression[RE] and print out the line) 正则表达式全局搜索并将行打印出来 在文件中查找包含字符串" ...

  9. Linux学习grep,sed,awk工具的使用

    1.grep:根据模式搜索文本并将符合模式的文本显示出来(pattern模式:由文本字符和正则表达式元字符所匹配出来的条件) 注:alias grep='grep --color' -c:打印符合要求 ...

随机推荐

  1. 编写一个Java程序,计算一下1,2,…,9这9个数字可以组成多少个互不相同的、无重复数字的三位偶数。

    package a; public class SanWeiOuShu { public static void main(String[] args) { String str="1234 ...

  2. C++,利用链式栈实现括号匹配,界面友好,操作方便,运行流畅

    #include<iostream> #include<string> using namespace std; struct Node { char ch; Node* ne ...

  3. Cheatsheet: 2014 09.01 ~ 09.30

    Mobile Testing Mobile: Emulators, Simulators And Remote Debugging iOS 8 and iPhone 6 for Web Develop ...

  4. php文本里 php和html代码谁先执行谁啊

    php文本里 php和html代码谁先执行谁啊 比如php里包含一个html文本,然后html代码里又包含了一个php文本,是按照谁先包含谁被服务器执行吗,即先执行php ,再执行里面的html,然后 ...

  5. python 内建函数功能函数 abs() coerce() divmod() round() pow()

    >>> abs(-1)1>>> abs(10.)  10.0>>> abs(1.2-2.1j)2.4186773244895647>> ...

  6. [HDOJ5289]Assignment(RMQ,二分)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5289 题意:求满足区间内最大值和最小值差为k的区间个数. 预处理出区间的最值,枚举左端点,根据最值的单 ...

  7. Java编译环境的搭建(eclipse)

    每用一种语言开发,要搭建其编译和开发环境,我们废话不说,立刻来看看Java开发环境的搭建. 1.安装JDK和JRE Windows环境下: a.去Oracle官网下载对应版本的JDK安装包,http: ...

  8. STL--map

    map--概述: 映射(Map)和多重映射(Multimap)是基于某一类型Key的键集的存在,提供对TYPE类型的数据进行快速和高效的检索. l对Map而言,键只是指存储在容器中的某一成员. lMu ...

  9. Image与byte[]之间的转换

    //将image转化为二进制 public static byte[] GetByteImage(Image img) { byte[] bt = null; if (!img.Equals(null ...

  10. ASP.Net MVC4中封装CSS和js冗余代码(不让其大篇的显示在前台上)

    (1)封装CSS和JS代码,使用调用的方式在前台进行调用.是开发看起来简洁和易于管理,可达到重用.   由于asp.netMVC4 框架 ,在封装js和CSS的时候,有如下规范: using Syst ...