find - linux 查找文件神器
2022/1/9大约 1 分钟命令工具Linux日常命令
find - linux 查找文件神器
找到文件
用法
find 待搜索的路径 寻找条件 操作| 参数 | 作用 |
|---|---|
| -name | 匹配名称 |
| -perm | 匹配权限(mode为完全匹配,-mode为包含即可) |
| -user | 匹配所有者 |
| -group | 匹配所有组 |
| -mtime -n +n | 匹配修改内容的时间(-n指n天以内,+n指n天以前) |
| -atime -n +n | 匹配访问文件的时间(-n指n天以内,+n指n天以前) |
| -ctime -n +n | 匹配修改文件权限的时间(-n指n天以内,+n指n天以前) |
| -nouser | 匹配无所有者的文件 |
| -nogroup | 匹配无所有组的文件 |
| -newer f1 !f2 | 匹配比文件f1新但比f2旧的文件 |
| --type b/d/c/p/l/f | 匹配文件类型(后面的字幕字母依次表示块设备、目录、字符设备、管道、链接文件、文本文件) |
| -size | 匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的文件) |
| -prune | 忽略某个目录 |
| -exec …… {} ; | 后面可跟用于进一步处理搜索结果的命令(下文会有演示) |
| 放在 ; 之后 用于打印刚才执行了哪些文件 |
场景示例
# 找到当前目录下十天前的文件并删除它们
find . -mtime +10 -name "*.*" -exec rm -rvf {} \;
# 查找不属于root用户的文件
find / ! -user root
# 查找包含 password 字符串的文本文件
find / -type f -exec grep -n password {} \; -print