问题现象:遍历当前目录下的所有文件,查找文本所在的文件

问题解决:grep指令

问题实现:grep -r "xxx" ./

问题扩展:其他grep参数,参考grep --help

其他用法:

1.从文件内容查找匹配指定字符串的行:

$ grep "被查找的字符串" 文件名
例子:在当前目录里第一级文件夹中寻找包含指定字符串的.in文件
grep "thermcontact" */*.in

2.从文件内容查找与正则表达式匹配的行:
$ grep –e “正则表达式” 文件名

3.查找时不区分大小写:
$ grep –i "被查找的字符串" 文件名

4.查找匹配的行数:
$ grep -c "被查找的字符串" 文件名


5.从文件内容查找不匹配指定字符串的行:
$ grep –v "被查找的字符串" 文件名


6.从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行
find / -type f -name "*.log" | xargs grep "ERROR"
例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行
find . -name "*.in" | xargs grep "thermcontact"
————————————————
版权声明:本文为CSDN博主「iamgengyiping」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gengyiping18/article/details/104879062/

Logo

更多推荐