如何递归地grep所有目录和子目录?
find . | xargs grep "texthere" *
如何递归地grep所有目录和子目录?
find . | xargs grep "texthere" *
当前回答
有关可用标志的列表:
grep --help
返回当前目录中此处的regexp文本的所有匹配项,以及相应的行号:
grep -rn "texthere" .
返回文本的所有匹配项,从根目录开始,具有相应的行号,忽略大小写:
grep -rni "texthere" /
此处使用的标志:
-r递归-n带输出的打印行号-我不理这个案子
其他回答
另一种语法递归地grep Linux系统上所有文件中的字符串
grep-irn“字符串”
-r表示递归搜索,在给定目录和子目录中搜索指定字符串,在文件、程序等中查找指定字符串
-不区分大小写可用于添加大小写颠倒的字符串
-n打印指定字符串的行号
注意:这会将大量结果打印到控制台,所以您可能需要通过管道过滤输出,并删除不太有趣的信息,它还会搜索二进制程序,因此您可能需要过滤一些结果
如果您知道所需文件的扩展名或模式,另一种方法是使用--include选项:
grep -r --include "*.txt" texthere .
您还可以使用--exclude提及要排除的文件。
Ag
如果您经常搜索代码,Ag(银搜索器)是grep的一个更快的替代方案,它是为搜索代码而定制的。例如,默认情况下,它是递归的,并自动忽略.gitignore中列出的文件和目录,因此您不必一直向grep或find传递同样繁琐的排除选项。
grep-r“texthere”。(通知期结束)
(^信用:https://stackoverflow.com/a/1987928/1438029)
澄清:
grep-r“texthere”/(递归地grep所有目录和子目录)
grep-r“texthere”。(递归地grep这些目录和子目录)
grep递归
grep[选项]模式[文件…][选项]-R、 -R,--递归递归地读取每个目录下的所有文件。这相当于-d recurse或--directories=recurse选项。http://linuxcommand.org/man_pages/grep1.html
grep帮助
$grep--帮助
$ grep --help |grep recursive
-r, --recursive like --directories=recurse
-R, --dereference-recursive
选择
确认(http://beyondgrep.com/)
银(http://github.com/ggreer/the_silver_searcher)
要查找路径递归包含特定字符串的文件名,请使用以下命令对于UNIX:
find . | xargs grep "searched-string"
对于Linux:
grep -r "searched-string" .
在UNIX服务器上查找文件
find . -type f -name file_name
在LINUX服务器上查找文件
find . -name file_name
下面是在Unix和Linux环境中递归搜索字符串的命令。
对于UNIX命令是:
find . -name "string to be searched" -exec grep "text" "{}" \;
对于Linux,命令是:
grep -r "string to be searched" .