*grep擅长单纯的查找或匹配文本内容
常见选项及含义:
- -i 搜索时候忽略大小写
- -n 列出所有的匹配行,显示行号
- -v 反向选择
- -c 只输出匹配行的数量
- -l 只列出符合匹配的文件名,不列出具体的匹配行
- -h 查询多文件时不显示文件名
- -r 递归搜索
- -q 禁止输出任何结果,已退出状态表示搜索是否成功
- --color=auto 将找到的关键字加上颜色显示
- -E, --extended-regexp PATTERN 是一个可扩展的正则表达式(缩写为 ERE)
- -B, --before-context=NUM 打印以文本起始的NUM 行
- -A, --after-context=NUM 打印以文本结尾的NUM 行
基本正则列表:
^ | 匹配行首 |
$ | 匹配行尾 |
[ ] | 集合,匹配集合中任意个字符 |
[ ^ ] | 对集合取反 |
. | 匹配任意个字符 |
* | 匹配前一个字符任意次数(*不能单独使用) |
\{ n,m\ } | 匹配前一个字符n到m次 |
Sed 基本用法介绍
*sed是操作、过滤和转换文本内容的强大工具。
常用功能包括结合正则表达式对文件实现快速的增删改查,其中查询功能中最常用的两大功能是过滤(过滤指定字符串)、取行(取出指定行)
sed基本语法:
sed [选项] [sed内置命令字符] [输入文件]
参数选项 | 解释 |
-n | 取消默认sed的输出,常与sed内置命令p一起用 |
-i | 直接将修改结果写入文件,不同-i,sed修改的是内存数据 |
-e | 执行多条命令,多次编辑,不需要管道符了 |
-r | 支持正则扩展 |
sed常用的内置命令字符:
sed的内置命令字符 | 解释 |
a | append,对文本追加,在指定行后面添加一行/多行文本 |
d | Delete,删除匹配行 |
i | insert,表示插入文本,在指定行前添加一行/多行文本 |
p | Print,打印匹配行的内容,通常p与-n一起用 |
s/正则/替代内容/g | 匹配正则内容,然后替换内容(支持正则),结尾**g(Global)**代表全局匹配 |