参考:http://man.linuxde.net/find
列出当前目录下的所有目录及文件
[root@server1 find]# find .
默认列出以.txt结尾的文件及目录。要想只列出文件,需要用 -type f 指明。(
f 普通文件 l 符号连接 d 目录 c 字符设备 b 块设备 s 套接字 )
忽略大小写(要匹配对象的大小写)
当前目录及子目录下查找所有以.txt和.pdf结尾的文件 -o表示或
注意括号两边必须有空格。
匹配文件路径或者文件
基于正则表达式匹配文件路径
同上,但忽略大小写
!表示非
找出/home下不是以.txt结尾的文件
根据文件时间戳进行搜索
访问时间(-atime/天,-amin/分钟):用户最近一次访问时间。
修改时间(-mtime/天,-mmin/分钟):文件内容最后一次修改时间。
变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。
搜索最近七天内被访问过的所有文件
搜索恰好在七天前被访问过的所有文件
find . -type f -atime 7
搜索超过七天内被访问过的所有文件
find . -type f -atime +7
搜索访问时间超过10分钟的所有文件
find . -type f -amin +10
find . -type f -size 文件大小单元
文件大小单元:
b —— 块(512字节)
c —— 字节
w —— 字(2字节)
k —— 千字节
M —— 兆字节
G —— 吉字节
等于10KB的文件 小于10KB的文件 大于10KB的文件
[root@server1 ~]# find . -size 10k
[root@server1 ~]# find . -size -10k
[root@server1 ~]# find . -size +10k
删除匹配到的
[root@server1 ~]# find /test/find/ -name '*.txt' -delete
权限:-perm
找出当前目录用户tom拥有的所有文件
find . -type f -user tom
找出当前目录用户组sunk拥有的所有文件
find . -type f -group sunk
借助-exec选项与其他命令结合使用
上例中,{} 用于与-exec选项结合使用来匹配所有文件,然后会被替换为相应的文件名
上例中,-ok和-exec行为一样,不过它会给出提示,是否执行相应的操作。