find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]
- find - search for files in a directory hierarchy 查找文件并可执行操作
- 支持一次搜索多个路径,不指定路径即当前路径搜索
- 使用-name 的条件时.建议使用双引号条件,否则可能有未知的错误,忽略大小写 -iname
- 只有-name 的条件支持通配符,其他如-inum 15588[0-9]等均不支持
- 支持多个不同条件并列如 -type f -group xzt
- 支持同一条件多次 -a:and -o:or
- 支持反条件查找 ! -name "*.ptp"
- 如时间,大小等选项参数 +n:比n大 -n:比n小 n:等于n
- -exec 和 -ok 后面参数注意格式
- 搜索遇到无权限的目录报警,可以加上 2>/dev/null
- -P:为默认的不处理符号链接,-H:指定命令跟随的符号链接和-L:指定跟随所有的符号链接
-
常用选项:
-
寻找大于50M的文件,并列出详细信息
[xzt7566@centos7-test ~]$ find / -size +50M -exec ls -lh {} \; 2>/dev/null . -rw-r--r--. 1 root root 66M Apr 22 23:15 /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.221-2.6.18.0.el7_6.x86_64/jre/lib/rt.jar -rwxr-xr-x. 1 root root 97M Mar 27 21:56 /usr/lib64/firefox/libxul.so -rwxrw-rw-. 1 xzt7566 xzt7566 57M Apr 30 18:10 /home/xzt7566/.cache/vmware/drag_and_drop/8jVyag/M486-102-E02F1.NC -rwxrw-rw-. 1 xzt7566 xzt7566 57M May 1 09:38 /home/xzt7566/Documents/nc/4.nc
-
寻找所有的rpm包,更改权限
find ./ -name "*.rpm" -exec chmod 777 {} \;
-
二次查找
[xzt7566@centos7-test Downloads]$ find /etc -type f |xargs grep "xzt" 2>/dev/null /etc/group:wheel:x:10:xzt7566 /etc/group:xzt7566:x:1000:xzt7566 /etc/passwd:xzt7566:x:1000:1000:xzt7566:/home/xzt7566:/bin/bash /etc/group-:wheel:x:10:xzt7566 /etc/group-:xzt7566:x:1000: /etc/passwd-:xzt7566:x:1000:1000:xzt7566:/home/xzt7566:/bin/bash
-
显示格式
[xzt7566@centos7-test Downloads]$ find ./ -printf "%f %m %u \n" ./ 755 xzt7566 .8 775 xzt7566 3.txt 664 xzt7566
-
类似ls的效果
[xzt7566@centos7-test Downloads]$ find ./ ./ ./.8 ./3.txt