shell 三剑客是指在Linux/Unix系统下使用最广泛的命令行工具:grep、sed、awk
三剑客都是文本处理工具 可用于搜索、替换和处理大量文本数据,三者通常是和正则表达式一起使用
正则表达式
\ 转义符,将特殊字符进行转义,忽略其特殊意义
^ 匹配行首,awk中,^则是匹配字符串的开始
$ 匹配行尾,awk中,$则是匹配字符串的结尾
^$ 表示空行
. 匹配除换行符\n之外的任意单个字符
.* 匹配所有
[ ] 匹配包含在[字符]之中的任意一个字符
[^ ] 匹配[^字符]之外的任意一个字符
[ - ] 匹配[]中指定范围内的任意一个字符
? 匹配之前的项1次或者0次
+ 匹配之前的项1次或者多次
* 匹配之前的项0次或者多次, .*
() 匹配表达式,创建一个用于匹配的子串
{
n } 匹配之前的项n次,n是可以为0的正整数
{
n,} 之前的项至少需要匹配n次
{
n,m