请问在linux下或windows下分别实现在多文件中查找关键字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问在linux下或windows下分别实现在多文件中查找关键字相关的知识,希望对你有一定的参考价值。

我现在有一个目录,这个目录里面有很多的子目录和文件。我想在整个目录中的所有文件中实现对某一关键字的查找。
我知道linux里面有grep和sed工具。但我不知道具体怎么用,是不是要编一个shell才能实现啊??
还有windows下有没有实现这个在多文件查找关键字功能的好软件或工具啊
好吧,我来贴出正解吧。
专研了一下,发现其实可以有四种方法:
find 文件目录 -name ‘*.*' -exec grep 'xxx' + -n
或是
find 文件目录 -name '*.*' | xargs grep 'xxx' -n
或是
grep 'XXX' 文件目录 -Rn
或是
grep 'XXX' `find 文件目录 -name '*.*'`

谁能告诉我windows下有没有比较好的工具啊。。。

find . -print |xargs grep "xxx"
grep "xxx" ./ -rn

use windows built in search; 我记得notpad++ 有一个可以搜目录文件中关键字的功能
参考技术A linux

find 文件目录 -name '*.c' exec grep -l 'xxx' \;

or

find 文件目录 -name '*.c' | xargs grep -l 'xxx'追问

请解释一下上述的指令吧

追答

find 文件目录 -name '*.c' 这个是在文件目录里面查找所有以.c为扩展名的文件
后面的是在这个文件里面查找xxx关键字

追问

我试了一下,
应该是
find 文件目录 -name ‘*.*' -exec grep 'xxx' + -n;

find 文件目录 -name '*.*' | xargs grep 'xxx' -n;
是'+'号而不是'\'号。这难道是find的版本问题吗?

追答

'\'号 是find 里面exec要有的 至于+号我就不清楚了

以上是关于请问在linux下或windows下分别实现在多文件中查找关键字的主要内容,如果未能解决你的问题,请参考以下文章

请问,Linux仍需要Windows的支持吗

请问在WINDOWS平台下怎么实现LINUX下'/usr/sbin/sendmail'这个功能呢?

请问Eclipse中源码的中文部分都显示成乱码如何解决?

请问如何在windows下编译c代码为Linux系统的可执行文件呢

请问能够实现在UNIX下,一个进程下创建两个线程调用多个函数的问题

请问在Linux下可以运行bat文件么?