find命令用来在目录下查找文件的命令,和locate不同,find命令是实时查找,不做模糊匹配,但是可以使用通配符查找,相对更。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件,并且将查找到的子目录和文件全部进行显示。
语法格式:find [查找路径] [查找条件] [查找后的动作]
查找路径:具体搜索路径,默认为当前路径下;
查找条件:可以根据文件名、大小、权限、日期等进行查找。没有条件的话默认为当前路径下所有文件;
查找后的动作:对符合条件的文件作出的操作,如删除、复制,默认为输出到标准输出。
实例列举:
1. 列出当前目录及子目录下所有文件和文件夹
find .
2. 在/admin目录下查找以.txt结尾的文件名
find /admin -iname "*.txt"
3. 找出/ admin下不是以.txt结尾的文件
find / admin ! -name "*.txt"
4. 当前目录及子目录下查找所有以.txt和.pdf结尾的文件
find . -name "*.txt" -o -name "*.pdf"
5. 匹配文件路径或者文件
find /admin/ -path "*user*"
6. 基于正则表达式匹配文件路径
find . -regex ".*\(\.txt\|\.pdf\)$"
7. 搜索出深度距离当前目录至少3个子目录的所有文件
find . -mindepth 3 -type f
8.搜索近五天内被访问过的所有文件
find . -type f -atime -5
9.搜索五天前被访问过的所有文件
find . -type f -atime 5
10.搜索超过五天被访问过的所有文件
find . -type f -atime +5
11. 搜索访问时间超过5分钟的所有文件
find . -type f -amin +10
12. 删除当前目录下所有.txt文件
find . -type f -name "*.txt" -delete
13. 搜索出当前目录下权限为777的文件
find . -type f -perm 777
14. 找出当前目录下权限不是777的php文件
find . -type f -name "*.php" ! -perm 777
以上是find查找文件常用命令,在使用到find命令时,可以参考以上实例!
老男孩教育IT培训班型有:
1 :Linux云计算运维、Python全栈开发+人工智能、Java全栈开发、大数据开发
适合于:0基础学习,对IT感兴趣,想要在IT行业发展的朋友们
2 周末班:MySQL DBA周末班,阿里云架构师、GO语言开发、Linux架构师、Python自动化开发、Python自动化架构师、Linux云计算运维
适合于:本身IT行业内的朋友们,有一年以上行业经验
3 网络班