find
功能描述:文件搜索
find [paths] [expression] [actions]
paths:所要搜索的目录及其所有子目录。默认为当前目录。
expression:所要搜索的文件的特征。
actions:对搜索结果进行特定的处理。
args:
-name 选项可以根据文件名称进行检索,区分大小写
? 可以表示任意一个单一的符号
* 可以表示任意数量(包括 0)的未知符号
! 反义匹配
-iname 同 -name ,不区分大小写
-type 根据类型搜索
f 文件
d 目录
l 符号链接
s Socket
-ls 显示检索到的文件信息
-empty 检索为空的文件或目录
-user 检索归属于特定用户的文件或目录
-size 根据文件大小检索,参数单位默认为c
用 + 和 - 表示大于或小于当前条件
c -> 字节 k -> kb M -> Mb G —> Gb
-maxdepth 限制遍历的层数
-delete 可以用来删除搜索到的文件和目录
-exec 可以对搜索到的结果执行特定的命令
{} 作为检索到的文件的占位符
';' 作为命令结束的标志
-mtime 修改时间(Modification time):最后一次文件内容有过更改的时间点
-atime 访问时间(Access time):最后一次文件有被读取过的时间点
-ctime 变更时间(Change time):最后一次文件有被变更过的时间点
用 + 和 - 限制时间范围, 2 表示两天,-2 表示两天之内, +2 表示两天以外
-empty 空目录
-print0 输出的文件列表以null分隔
# 查询当前目录下所有以steam开头的文件
find ./ -name 'steam*'
# 将检索到的后缀为.mp3的文件拷贝到指定目录
find ~ -type f -name '*.mp3' -exec cp {} /root/tmp ';'
# 查找空目录
find . -empty
#搜索文件大小大于8字节的文件
find . -size +8c