grep “查找内容” profile 显示在profile文件中包含查找内容的行
反显
grep -v “#” profile 反显,显示不包含#的行
匹配操作符:
非正则中当作占位符使用
*:
0次到任意次字符
ls -l ./a* 显示当前路径下的出现a加上任意个字符的行
?:
匹配1个任意字符
ls -l ./a? 显示当前路径下a加上1个任意字符的行
ls -l ./a?? 显示当前路径下a加上2个任意字符的行
正则中
.
匹配任意单个字符
^
匹配行首
$
匹配行尾
[ ]
自定义匹配单个字符
[1249a],[^12],[a-k] 字符序列单字符占位
\<,\>
单词首尾边界的空白符、特殊字符
grep ‘<ooxx>’ grep.txt 查询ooxx前后字符为空白符或特殊字符,$ooxx , ooxx ,
| (grep 需要加\转移)
连接操作符
(,) (grep 需要加\转移)
选择操作符
\n (grep 需要加\转移)
反向引用
\1 将捕获的内容显示出来
重复操作符:
? 匹配0到1次 (grep 需要加\转移)
* 匹配0到任意次
+ 匹配至少1次 (grep 需要加\转移)
{n} 匹配n次 (grep 需要加\转移)
{n,} 匹配n到多次 (grep 需要加\转移)
{n,m} 匹配n到m次 (grep 需要加\转移)
.* 重复匹配任意个字符 (grep 需要加\转移)
ooxx12121212ooxx
ooxx 12121212
oox 12121212
1212 ooxx 1212
oo3xx
oo4xx
ooWxx
oomxx
$ooxx
oo1234xx
ooxyzxx
查询包含"ooxx"的行
grep ‘ooxx’ grep.txt
查询包含ooxx单词的行
grep “<ooxx>” grep.txt
查询ooxx开头的行
grep “^ooxx” grep.txt
查询ooxx为单词开头的行
grep “^ooxx>” grep.txt
查询oo出现一个数字xx 的行
grep “oo[0-9]xx” grep.txt
查询oo出现多个数字xx 的行
grep “oo[0-9]+xx” grep.txt
查询oo出现4个数字xx 的行
grep “oo[0-9]{4}xx” grep.txt
查询oo出现多个数字xx 的行,使用反向引用方式
grep “(oo)(xx).*\1\2” grep.txt