51、正则表达式
是一种文本模式,或者说是一种特殊的字符串模式,作用是处理字符串
字符 含义
\ 转义符,将特殊字符或符号的意义去除
. 代表任意一个字符
* 重复0次或多次*前的一个字符
[] 字符的集合
.* 匹配所有字符
^ 匹配某字符的开头
$ 匹配某字符的结尾
^$ 匹配空行
[^] 取反
^.* 匹配多个任意字符开头
| 或
[A-Z] 26个大写字母
[a-z] 26个小写字母
[0-9] 0-9的数字
\d 匹配一个数字字符
\w 匹配包括下划线的任意单词字符
\b 匹配单词的开始或结束
+ 重复一次或多次
? 重复零次或一次
{n} 重复n次
{n,m} 重复n到m次
文本处理命令:grep/egrep 、sed 、awk
grep:是一个强大的文本搜索工具
grep [选项] 条件表达式 文件名
-c 只输出匹配行的行数
-I 不区分大小写(只适用于单字符)
-l 查询多文件时只输出包含匹配字符的文件名
-n 显示匹配行及其行号
-s 不显示不存在或无匹配文本的错误信息
-v 显示不包含匹配文本的所有行
egrep=grep -E
sed 是一种流编辑器,用于过滤或转换文本。
sed [选项] ‘command’文件名
-n: 取消默认输出
-i: 修改文件内容
command选项
d 删除。
p 打印
s 替换指定字符
g 全局替换
awk 是一个强大的编程工具,用于对文本和数据进行处理。
awk [选项] ‘条件 {动作}’ 文件名
-F fs:指定分隔符,fs可是字符串或正则表达式
-f scripfile: 从脚本文件中读取awk命令。