locate:可以搜索文件和目录的名称,但是不能搜索文件的内容。
grep:在文件中搜索数据
find:根据指定条件对文本进行搜索
locate
搜索文件名数据库
-i 不区分大小写
locate -n 3 test 查看前三个结果
locate test | less 结果分屏显示
grep
在文本文件中搜索匹配的模式
grep hater * 查找所有使用hater字符串的地方
grep hater comment.txt 在该文件中查找使用字符串,显示包含该内容的行
grep 'hey!' * 单引号告诉grep搜索内容不包含shell变量
-R 递归式搜索文件中的文本
grep -R hideous * 一次搜索包含hideous内容的多个子目录
|less 分屏显示
>hideous.text 输出到文本
-i 不区分大小写
-w 只搜索整个词
-n 显示结果所在的行号
-l 列出结果所在行的文件名
find
根据指定条件对文本搜索
find / -name xxx 指定内容
find . -user xxx 根据拥有者
find . -size 10M 根据文件大小
find . -type d 根据文件类型
-a 将多个指定条件组合起来
例 find . -name xxx -a -type f
-o 满足多个条件中一个即可
例 find . -size +10M -o size 10M
-fprint 将搜索结果打印到文件