一:基础部分
grep “搜索文本” 文件名
grep "Starting Network Manager Script Dispatcher Service" messages-20211114
- -i :不区分大小写
- -c :统计出现的次数
- -n :输出行号
- -v 反向匹配
- 这些参数可以一起使用
二:正则表达式
编辑.md文档通过反斜杠\,可以打印出特殊字符
- * 符号匹配0次或者多次
grep 'go*' test.txt
- .符号,匹配除换行符之外的所有字符
grep '.' test.txt
当…与其他字符一起使用的时候匹配任意两个字符
grep g'..d' test.txt
只匹配 . 符号
grep '[.]' test.txt
- {m,n}指定匹配字数
grep 'go\{2,3\}' test.txt
^表示以……开头
查看以root为行首的开始
grep '^root' /etc/passwd
- $表示以……结尾
表示以bash结尾的行
- ^$ 空行
- [] 范围匹配
[0-9] 数字
[a-z] 小写英文字符
[A-Z] 大写的引文字符
[0-9a-zA-Z] 数字和英文字符
-
\b 边界匹配,可以理解为单词边界匹配,搜寻的包含所匹配的单词
-
\B 非单词边界匹配
-
\w 字母数字和下划线匹配
-
\W 非字母 非数字 非下划线
-
? 匹配前一个字符0次或者1次
-
+ 匹配前一个字符1次以上
-
() 一般与 | 一起使用表示多选
以上符号在正则中需要 \ 进行转译
待续…