find命令使用详解

一、主要内容

======================================

1. 用文件名查找文件

2.用文件名查找文件,忽略大小写

3. 使用mindepth和maxdepth限定搜索指定目录的深度

4. 在find命令查找到的文件上执行命令

5. 相反匹配

6. 使用inode编号查找文件

7. 根据文件权限查找文件

8. 找到home目录及子目录下所有的空文件(0字节文件)

9. 查找5个最大的文件

10. 查找5个最小的文件

11. 使用-type查找指定文件类型的文件

12. 通过和其他文件比较修改时间查找文件

13. 通过文件大小查找文件

14. 给常用find操作取别名

15. 用find命令删除大型打包文件

16.找到在1个小时内被更改的文件

17.找到1个小时内被访问过的文件

18.查找一个小时内状态被改变的文件

19.搜索仅仅限定于文件,不显示文件夹

20.仅仅查找非隐藏的文件(不显示隐藏文件)

21.查找文件修改时间在某一文件修改后的文件

22.查找文件访问时间在某一文件的修改时间之后的文件

23.查找状态改变时间在某个文件修改时间之后的文件:

24.在find命令输出上使用 ls -l,列举出1小时内被编辑过的文件的详细信息

25.仅仅在当前文件系统中搜索

26.在同一个命令中使用多个{}

27. 使用多个{}实例

28.将错误重定向到/dev/nul

29.将文件名中的空格换成下划线

30.在find结果中同时执行两条命令

31、常用指令

======================================

 

二、find命令实用实例总结

======================================

一、基于name查询文件

# find . -name tecmint.txt

# find /home -name tecmint.txt

# find /home -iname tecmint.txt

# find / -type d -name Tecmint

# find . -type f -name tecmint.php

# find . -type f -name "*.php"

 

 

二、基于权限查询文件

# find . -type f -perm 0777 -print

# find / -type f ! -perm 777

# find / -perm 2644

# find / -perm 1551

# find / -perm /u=s

# find / -perm /g+s

# find / -perm /u=r

# find / -perm /a=x

# find / -type f -perm 0777 -print -exec chmod 644 {};

# find / -type d -perm 777 -print -exec chmod 755 {};

# find . -type f -name "tecmint.txt" -execrm -f {} ;

# find . -type f -name "*.txt" -exec rm -f{} ;

# find . -type f -name "*.mp3" -exec rm -f{} ;

# find /tmp -type f -empty

# find /tmp -type d -empty

# find /tmp -type f -name ".*"

 

 

三、基于用户和组查询文件

# find / -user root -name tecmint.txt

# find /home -user tecmint

# find /home -group developer

# find /home -user tecmint -iname "*.txt"

 

四、基于时间查询文件或目录

# find / -mtime 50         它代表着最近一次文件内容被修改的时间。可用ls -l 命令查看

# find / -atime 50          

  1.   将分区mount的挂载的时候指定采用非relatime方式
  2.   atime小于ctime或者小于mtime的时候
  3.   本次的access time和上次的atime超过24个小时

#find / ctime 50              它代表着最近一次文件状态改变的时间 ,是status change time,是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改,即文件状态最后一次被改变的时间。可用ls -lc 命令查看。

# find / -mtime +50 –mtime -100

# find / -cmin -60

# find / -mmin -60

# find / -amin -60

 

 

五、基于大小查询文件或目录

# find / -size 50M

# find / -size +50M -size -100M

# find / -size +100M -exec rm -rf {} ;

# find / -type f -name *.mp3 -size +10M -exec rm {} ;

========================================

posted @ 2019-06-25 09:39  夜风2019  阅读(1082)  评论(0编辑  收藏  举报