Linux find用法
1,文件名搜索:find /tmp -name "*.log"
2,指定目录下搜索某目录中的某文件:find /tmp -path '*a*/*.log' 搜索tmp下文件名包含a的下面的.log文件
3,根据文件类型查找:
一般需要搜索的文件类型就只有普通文件(f),目录(d),链接文件(l)。
搜索普通文件类的文件,且名称为a开头的sh文件:find /tmp -type f -name "a*.sh"
搜索目录类文件,且目录名以a开头:find /tmp -type d -name "a*"
4,根据文件的时间戳搜索
最基础的时间戳包括:-atime/-mtime/-ctime。
搜索/tmp下3天内修改过内容的sh文件:find /tmp -type f -mtime -3 -name "*.sh"
5,根据文件大小搜索
搜索/tmp下大于100K的sh文件:find /tmp -type f -size +100k -name '*.sh'
6,根据权限搜索:-perm
搜索/tmp下所有者具有可读可写可执行权限的sh文件:find /tmp -type f -perm -0700 -name '*.sh'
7,搜索空文件
空文件可以是没有任何内容的普通文件,也可以是没有任何内容的目录。
搜索目录中没有文件的空目录:find /tmp -type d -empty