这些命令之间有什么区别:
find . –type f –name '*txt*'
和
find . –type f | grep 'txt'
我尝试运行此程序,但有所不同,但我想知道为什么吗?
最佳答案
主要区别在于FIND用于使用过滤器搜索文件和目录,而GREP用于搜索文件中的模式或搜索过程
FIND是用于使用大小,访问时间,修改时间等过滤器搜索文件和文件夹的命令。
find命令列出目录及其子目录中与一组过滤器匹配的所有文件。此命令最常用于查找具有特定名称的所有文件。
要在当前目录及其所有子目录中找到所有名为theFile.txt的文件,请输入:
find . -name theFile.txt -print
要在当前目录及其子目录中查找扩展名为.txt的所有文件,请输入:
find . -name "*.txt" -print
GREP :(全局搜索正则表达式并打印)
在文件中搜索指定的字符串或表达式。
Grep搜索包含指定模式的行,默认情况下,将其写入标准输出。
grep myText theFile.txt
结果:Grep将打印出包含单词myText的每一行。
关于unix - find与grep有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43165447/