find命令用于查找指定文件(只能查找文件,若要查找文件内容用grep)
find常用参数
- -name:按文件名查找(文件名最好用双引号包括,否则容易和通配符冲突)
- -type:按类型查找(f:文件,d:目录,l:链接,...)
- -perm:按权限查找(-perm 644,-perm +7:匹配ugo均为7,-perm -7:匹配ugo任意至少一个为7)
- -user:按所属用户查找
- -group:按所属用户组查找
- -size:按文件大小查找(-size 100:匹配大小为100个block,-size 100c:匹配大小为100字节,-size +100c -a -1000c:匹配大于100字节且小于1000字节)
将find查找结果作为shell命令的输入
- -exec:格式为
find ... -exec [command] {} \;- -ok:和-exec类似,只是操作有确认,适合rm等危险操作
- xargs:相比较于-exec和-ok,对于大量查找结果,xargs不会导致缓存溢出,格式为
find ... | xargs [command]?我认为-exec本质上可能是一种特殊的管道
另外
1.取非操作:例如查找非目录类型文件,可使用如下命令
find [path] ! -type d ...2.跳过目录:-path参数 & -prune参数(存疑,待完成)
3.find可使用复合条件,如
find ./ -name "*.sh" -o -name "*.c" #查找当前目录下文件名后缀为.sh或.c的文件
本文深入探讨了find命令的基本用法及高级特性,包括如何通过各种参数进行精确的文件查找,以及如何利用其功能执行复杂的查找任务。此外,文章还介绍了如何将find的查找结果与shell命令结合使用,实现自动化操作。
4314

被折叠的 条评论
为什么被折叠?



