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