正则, grep

1. 正则表达式

 正则表达式  描述  示例
^ 行起始标记  ^hell匹配以hell开头的行
$ 行尾标记  test$匹配以test结尾的行
. 匹配任意一个字符  hell.匹配hell1,hell2,但是不能匹配hell12,只能匹配单个字符
[] 匹配包含在[字符]之中的任意一个字符  test[123]匹配test1,test2,test3
[^] 匹配除[^字符]之外的任意一个字符  test[^12]不匹配test1,test2,匹配test3
[-] 匹配指定范围内的任意一个字符  [0-10],匹配0~10中的任意一个数字
? 匹配之前的项1次或者0次  hel?o匹配helo或者heo
+ 匹配之前的项1次或者多次  hel+o匹配helo或者helllllo,但是不能匹配heo
* 匹配之前的项0次或多次  hel*o匹配helo或者helllllo,也能匹配heo
() 创建一个用于匹配的子串  ma(tri)?可以匹配ma或者matri
{n} 匹配之前的项n次  [0-9]{3}匹配任意一个三位数
{n,} 匹配之前的项至少n次  [0-9]{3,}匹配任意一个三位或者更多位的数
{n,m} 匹配之前的项n到m次  [0-9]{3,4}匹配一个三位到四位的数
| 匹配 | 两边的任意一项  June (1st | 2nd)匹配June 1st或者June 2nd
\ 转义符可将上面的符号转义  a\*b匹配a*b,不能匹配ab

2. grep

递归搜索

grep "text" . -R -n

-R 表示在当前目录递归搜索,-n打印出匹配的文件的行号

如果需要排除目录,可以使用--exclude-dir

打印出匹配行的前后行

多个匹配以--分隔

Linux Shell Scripting Cookbook 读书笔记 4的更多相关文章

  1. Linux Shell Scripting Cookbook 读书笔记 1

    本系列文章为<Linux Shell Scripting Cookbook>的读书笔记,只记录了我觉得工作中有用,而我还不是很熟练的命令 书是很好的书,有许多命令由于我比较熟悉,可能就没有 ...

  2. Linux Shell Scripting Cookbook 读书笔记 2

    cat,script,find, xargs, tr, tmp文件,字符串截取,批量文件重命名,固定大小文件,自动化交互 1. cat的用法 压缩连续的空白行 cat -s file 也可以用tr,将 ...

  3. Linux Shell Scripting Cookbook 读书笔记 7

    ping, du, ps, kill, 收集系统信息 判断网络中哪些主机是活动主机 #!/bin/bash for ip in 10.215.70.{1..255}; do ( ping $ip -c ...

  4. Linux Shell Scripting Cookbook 读书笔记 6

    wget,curl, tar, rsync wget ftp://example.com/somefile.img -t 5 -O download.img -o log -t表示重试的次数 -O指定 ...

  5. Linux Shell Scripting Cookbook 读书笔记 5

    sed,awk 1. sed (string editor) 使用-i可以将结果运用于原文件 sed 's/text1/text2/' file > newfile mv newfile fil ...

  6. Linux Shell Scripting Cookbook 读书笔记 3

    patch, tree, head ,tail 1. 创建不可修改文件 chattr +i file chattr -i file 移除不可修改属性 2. 能够启动闪存或硬盘的混合ISO isohyb ...

  7. 《The Linux Command Line》 读书笔记02 关于命令的命令

    <The Linux Command Line> 读书笔记02 关于命令的命令 命令的四种类型 type type—Indicate how a command name is inter ...

  8. 《The Linux Command Line》 读书笔记01 基本命令介绍

    <The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...

  9. 《Linux内核分析》读书笔记(四章)

    <Linux内核分析>读书笔记(四章) 标签(空格分隔): 20135328陈都 第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间,进程调度程序可看做在可运行 ...

随机推荐

  1. 【PostgreSQL-9.6.3】psql常用命令

    命令 描述 \l 查看数据库 \c 换库 \d 查看所有表 \dt 只显示匹配的表 \di 只显示匹配的索引 \ds 只显示匹配的序列 \dv 只显示匹配的视图 \df 只显示匹配的函数 \d t1 ...

  2. andorid 查看OpenCv Mat的Debug信息

    在进行Android调试时,不能再Console显示Debug信息,只能在LogCat上显示,显示信息如下图: 代码段: public void printMat2Txt(Mat ElemM, Str ...

  3. Mac下php连接mysql数据库失败解决办法

    通过phpmyadmin连接mysql成功,但是通过php连接数据库失败,执行如下php语句 ? 1 @mysql_connect("localhost","root&q ...

  4. (转)Arcgis for JS实现台风运动路径与影像范围的显示

    http://blog.csdn.net/gisshixisheng/article/details/42025435 首先,看看具体的效果: 初始化状态 绘制中 绘制完成 首先,组织数据.我组织的数 ...

  5. C# 增加 删除 更新 方法

    /// <summary> /// 增加一条数据 /// </summary> public int Add(string 表名,string 参数,string 参数值) { ...

  6. C 预处理程序指令(CPP)

    #include 文件 提供的东西 stdio 提供 FILE.stdin.stdout.stderr 和 fprintf() 函数系列 stdlib 提供 malloc().calloc()和 re ...

  7. 通过redis协议构建脏字过滤微服务

    下载 https://github.com/jonnywang/... 安装使用 mkdir -p /data/server/wordsFilter cd /data/server/wordsFilt ...

  8. phpcms v9 邓士鹏(石家庄职业技术学院)

    头部标题.关键词.描述调用: <title>{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title'] ...

  9. 快速上手Linux 玩转典型应用_慕课网笔记

    1.没有exe安装程序 2.区分大小写 3.一切皆文件 4.文件后缀不是那么重要,只是为了好识别 -------------------------------------------------- ...

  10. SCU - 4117 - Discover

    先上题目: D - Discover Time Limit:0MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit St ...