find 是 Linux 中强大的搜索命令,不仅可以按照文件名搜索文件,还可以按照权限、大小、时间、inode 号等来搜索文件。但是 find 命令是直接在硬盘中进行搜索的,但如果指定的搜索范围过大,find命令就会消耗较大的系统资源,导致服务器压力过大,所以,在使用 find 命令搜索时,不要指定过大的搜索范围。 语法格式: find 路径(查找范围) 查找数据条件(参数)
-maxdepth: 查找数据层级最深深度 -mindepth: 查找数据层级最浅深度
[root@yu zy]# find /zy/ -maxdepth 1 -name "z1.txt" /zy/z1.txt方法1、利用管道
[root@yu zy]# find /yu/ -name '*.txt'|xargs cp -t /zy/ [root@yu zy]# ls z1 z1.txt z2 z2.txt z3 z3.txt [root@yu zy]# mv z1.txt z2.txt z3.txt /yu/ [root@yu zy]# ls z1 z2 z3 [root@yu yu]# find /yu/ -name '*.txt'|xargs -i cp {} /zy/ [root@yu yu]# cd /zy [root@yu zy]# ls z1 z1.txt z2 z2.txt z3 z3.txt方法2、利用exec参数
[root@yu zy]# find /yu/ -name '*.txt' -exec cp {} /zy/ \; [root@yu zy]# ls z1 z1.txt z2 z2.txt z3 z3.txt一天以前 / 之内:+1 / -1 等于一天:1
[root@yu zy]# find /yu/ -name '*.txt' -mtime -1 /yu/z1.txt /yu/z2.txt /yu/z3.txt-mmin: 按照分钟查找数据信息
比较重要表达式 扩展操作