find、locate、grep
find [搜索范围] [选项] 查找目标:
**搜索范围:**一般是一个目录
常用选项:
应用案例1:查找/home目录下所有txt文件:
应用案例2:查找/opt目录下,用户名称(文件拥有者)为root的文件:
应用案例3:找到整个linux系统中,大于20m的文件(+n大于,-n小于,n等于):
(单位的字母大小写自己试)
应用案例4:组合条件:查找/root目录下,所有txt文件,且拥有者为root,且小于20M:
locate 搜索文件:
功能:快速定位文件路径。因为其内部用了一个locate数据库,所以locate不会遍历整个系统目录,查询速度更快。但需要定期更新locate时刻。
注意:第一次运行locate,要使用updatedb指令创建locate数据库。
应用案例1:快速定位hello.txt文件的所在目录
grep和管道符号 |
grep [选项] 查找内容 源文件
解读:grep过滤查找,管道符|表示将前一个命令的处理结果输出传递给后面的命令处理。
常用选项:
应用案例1:查找hello.txt文件中的“happy”字符串,并显示其行号,不区分大小写:
hello.txt内容:
执行结果(这里可以体会到管道符的作用了,在这里,就是把cat的运行结果,传递给grep指令,让grep在cat的结果中继续执行):