Unix find和grep之间有什么区别?
这些命令之间的区别是什么:Unix find和grep之间有什么区别?,unix,find,command,Unix,Find,Command,这些命令之间的区别是什么: find . –type f –name '*txt*' 及 我尝试运行此程序,但存在差异,但我想知道原因是什么?在第一个示例中,您正在使用查找实用程序列出常规文件的文件名,其中文件名包含字符串txt 在第二个示例中,您使用find实用程序列出常规文件的文件名,并通过管道将生成的文件名提供给grep实用程序,该实用程序在每个文件的内容中搜索字符串txt。每次找到字符串时,都会输出文件的相应行。当目录名中有一个路径为txt时,第二个命令将找到匹配项。当您不想匹配像t
find . –type f –name '*txt*'
及
我尝试运行此程序,但存在差异,但我想知道原因是什么?在第一个示例中,您正在使用
查找
实用程序列出常规文件的文件名,其中文件名包含字符串txt
在第二个示例中,您使用
find
实用程序列出常规文件的文件名,并通过管道将生成的文件名提供给grep
实用程序,该实用程序在每个文件的内容中搜索字符串txt
。每次找到字符串时,都会输出文件的相应行。当目录名中有一个路径为txt
时,第二个命令将找到匹配项。当您不想匹配像txtfiles/allfiles.tgz
和transactions/txtelevisions/bigscreen.jpg
这样的路径时,您会希望使用第一个路径。主要的区别是FIND用于使用过滤器搜索文件和目录,而GREP用于搜索文件或目录中的模式搜索过程(es)
FIND是一个使用大小、访问时间、修改时间等过滤器搜索文件和文件夹的命令。
“查找”命令列出目录及其子目录中与一组筛选器匹配的所有文件。
此命令最常用于查找具有特定名称的所有文件 要查找当前目录及其所有子目录中名为file.txt的所有文件,请输入:
find . -name theFile.txt -print
要在当前目录及其子目录中查找以.txt扩展名结尾的所有文件,请输入:
GREP:(全局搜索正则表达式并打印) 在文件中搜索指定的字符串或表达式 Grep搜索包含指定模式的行,并在默认情况下将其写入标准输出
grep myText theFile.txt
结果:Grep将打印出包含单词myText的每一行。如果您尝试运行此操作,但存在差异,则您已经知道差异所在。我们还能告诉你什么?是的,但我想知道为什么会有不同
find . -name theFile.txt -print
find . -name "*.txt" -print