grep搜索当前目录和排除目录、文件、关键字

1.搜索当前目录
 
1.1 搜索当前目录下所有文件,-P文件Perl正则模式,是最强正则模式
grep -Prn "\d{3}" ./ 

grep -Prn "\d{3}" *

grep -rn "\d{3}" *   #不支持强正则
1.2 搜索指定目录下所有文件
grep -rnP "\d{3}" ./src

 

2.排除目录

grep -rni 'http' --exclude-dir=.git ./
grep -rni 'http' --exclude-dir={.git,res,bin} ./

 

3.排除文件
grep -rni 'http' --exclude=*.java
grep -rni 'http' --exclude=*.{java,js,css}
grep -rni 'http' --exclude={test.log,grep,*.log}

 

4.排除关键字
grep -i 'use' test.log | grep -v "option"
# 排除多个关键字
grep -i 'use' test.log | grep -v "option" | grep -v "find"

 

5.排除二进制
grep -I "keyword" .
grep -RI "grep" .
 
6.打印排除目录
ls | grep -Fv weiba               #打印不含weiba的目录
ls | grep -Pv '^(weiba|huati)$'   #打印不以weiba或huati开头的目录

 

posted @ 2022-06-22 14:37  全玉  阅读(1417)  评论(0编辑  收藏  举报