grep用法小结
用法
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] -e PATTERN ... [FILE...]
grep [OPTIONS] -f FILE ... [FILE...]
grep在文件中查找匹配正则表达式的内容,默认打印出匹配的一行
选项
-E 支持扩展正则表达式
-F 把PATTERN解析成简单的字符串,而不是正则表达式
-G 只支持基础正则表达式,这是默认选项
-P 支持perl正则表达式
使用文件grp.txt为演示
$ cat grp.txt
{"id":, "username": "jack", "email": "459874@qq.com"}
{"res":[,,,]}
baidu in beijing
didi in beijing
ali in hangzhou
tencent in shenzhen
huawei in shenzhen
-e PATTERN, 使用-e选项可以匹配多个条件

-f FILE, 从文件中获取PATTERN
-i 忽略大小写
-v 反向匹配,只选择未匹配的

-w 匹配整个单词
-x 匹配整行

可以看到 -x 选项和 grep '^h.*en$' grp.txt 等价
-c 不打印结果,只打印匹配到的行数
--color 匹配到的表达式高亮显示
-L 打印出未匹配的文件列表
-l 打印出匹配的文件列表
-m 指定最大匹配行数

-o 只打印匹配到的字符串,而不是打印一整行

-q 不打印结果,但是我们可以根据$?来判断是否有匹配到,在脚本中常用
-s 不打印错误结果(文件不存在、不可读文件)

-b 打印本行在文件中的字节偏移量
-H 打印匹配的文件名。当有多个文件匹配到的时候,这个是默认选项
-h 不打印文件名
-n 输出行号
--label 显示输入的时候用到,让标准输入STDIN的显示像从文件中读取的一样

-T 输出按照tab缩进
-Z 在文件名后输出 zero byte, 也就是啥都不输出

-A NUM 在匹配行后面再输出 NUM 行内容
-B NUM 在匹配行前面再输出 NUM 行内容
-C NUM 在匹配行前后各输出 NUM 行内容
--exclude=GLOB
--exclude-from=FILE
--exclude-dir=GLOB
这三个是跳过文件或目录
--include=GLOB 只处理匹配 GLOB 的文件
grep用法小结的更多相关文章
- [转]ssh常用用法小结
ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ...
- ssh常用用法小结
ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ...
- 转载:Hadoop排序工具用法小结
本文转载自Silhouette的文章,原文地址:http://www.dreamingfish123.info/?p=1102 Hadoop排序工具用法小结 发表于 2014 年 8 月 25 日 由 ...
- [No000010]Ruby 中一些百分号(%)的用法小结
#Ruby 中一些百分号(%)的用法小结 #这篇文章主要介绍了Ruby 中一些百分号(%)的用法小结,需要的朋友可以参考下 what_frank_said = "Hello!"#% ...
- C++ typedef用法小结 (※不能不看※)
C++ typedef用法小结 (※不能不看※) 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不 ...
- 函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结 (转)
函数fgets和fputs.fread和fwrite.fscanf和fprintf用法小结 字符串读写函数fgets和fputs 一.读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符 ...
- 1:CSS中一些@规则的用法小结 2: @media用法详解
第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下 at-rule ...
- 英语语法最终珍藏版笔记- 21it 用法小结
it 用法小结 it 在英语中的意思较多,用法较广,现总结如下. 一.it作句子的真正主语 1.it 指前面已经提到过的人或事物,有时指心目中的或成为问题的人或事物,作真正主语. 例如: What’s ...
- 结构体定义 typedef struct 用法详解和用法小结
typedef是类型定义的意思.typedef struct 是为了使用这个结构体方便.具体区别在于:若struct node {}这样来定义结构体的话.在申请node 的变量时,需要这样写,stru ...
随机推荐
- siebel学习笔记-应用/数据访问控制
应用/数据访问控制Siebel提供的两种主要的访问控制方式在View级别和Data(record)级别: 1.View级别的访问控制:一个企业通常按照功能进行工作的区分,分配给一个用户的功能决定了他能 ...
- Struts2学习-横切关注点
1.建空项目 2.建包 3.建类 4.编写 package com.nf.action; import com.opensymphony.xwork2.ActionInvocation; import ...
- php 四种基本排序算法
冒泡排序 思路分析:法如其名,就是像冒泡一样,每次从数组当中 冒一个最大的数出来. 第一轮:从第一个到最后一个冒泡比较,运行结果:最后一个最大 第二轮:从第一个到倒数第二个冒泡比较, 运行结果:最后一 ...
- 【Hibernate那点事儿】—— Hibernate应该了解的知识
前言: 最近由于有点时间,就像深入的学习一下Hibernate.之前只是简单的使用,并没领会它的妙处.这里就趁着分享的机会,好好整理一下. 这篇主要讲到了下面几个部分: Hibernate框架 Hib ...
- 1.LVS理论基础
查看我的有道云笔记: http://note.youdao.com/noteshare?id=68e0ca45757943e482ba390d4d49369f&sub=4A2A593CDE2D ...
- Python 函数作为返回值
函数作为返回值高阶函数除了可以接收函数作为参数外,还可以把函数作为结果值返回. def lazy_sum(*args): def sum(): ax=0 for n in args: ax = ax ...
- Oracle连接问题
ORA-01034: ORACLE not availableORA-27101: shared memory realm does not exist sqlplus /nolog conn /as ...
- <知识整理>2019清北学堂提高储备D3
全天动态规划入门到入坑... 一.总概: 动态规划是指解最优化问题的一类算法,考察方式灵活,也常是NOIP难题级别.先明确动态规划里的一些概念: 状态:可看做用动态规划求解问题时操作的对象. 边界条件 ...
- LeetCode17.电话号码的字母组合 JavaScript
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合. 给出数字到字母的映射如下(与电话按键相同).注意 1 不对应任何字母. 示例: 输入:"23" 输出:[&quo ...
- 自动化测试selenium教程
什么是自动化测试: 自动帮我们测试一个系统里面的主要功能,一个app.电脑网站.网页,每个系里面许多的功能,好比一个淘宝页面,里面N多功能,登录.注册,推荐,商品详情.评论等等:软件生命周期:需求调研 ...