linux中有很多查找指令,其中find是一个及其重要的查找命令,今天我们对find命令做大概的介绍。
find命令的格式为:find [搜索范围] [匹配条件]
1.find / -name
那如果我想要不缺分大小写来查找文件名称呢?
将-name变成-iname即可。
2.find -size +n -n n根据文件大小查找,查找文件大小为n块的文件,+n表示大于n块,-n表示小于,n表示等于,带有c时表示文件长度以字节记。
上图所示命令就表示查找文件大小大于512字节小于1024字节的文件。
【1M = 1024k 1k = 2数据块】
3.find -perm 按文件权限查找
其中+7000表示其中含有特殊权限s或t的文件,关于文件特殊权限,在之前的博客中有介绍。
文件特殊权限链接
4.find -ctime 、-atime 、-mtime +n / -n
+n表示超过多长时间,-n表示多长时间之内
find -mtime 0
上面的代码中0表示目前时间,所以,从现在开始,到24小时前,有改动过内容的文件都会被列出来。
用来分辨两个文件新旧关系的命令:
find /etc -newer /etc/passwd
列出在/etc下文件日期比/passwd新的文件
5,find -inum 根据节点查找
表示查找节点为31531的文件并删除,-exec后面可接其他的命令来啊处理查找结果。但注意,-exec后面不支持命令的别名,如 ls -l在此处不能写成 ll。
6.与用户或用户组名相关的参数
find -uid n //n为数字,这个数字是用户的账号ID,即UID,这个UID是记录在/etc/passwd里面与账号名称对应的数字。
find -gid n //n为数字,这个数字是用户组名的ID,即GID,这个GID记录在/etc/group中。
find -user name //name为用户组名
find -nouser //寻找文件的所有者不存在于/etc/passwd的人
find -nogroup //寻找文件的所有用户组不存在于/etc/group中的文件
举例说明:
7.find -type
查找文件的类型,主要有:一般正规文件(f)、设备文件(b,c)、目录(d)、链接文件(l)、socket(s)、及FIFO(p)等属性
再介绍一些find命令,这些不好示例,大家可以自行上机操作。
-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。
-fstype:查找位于某⼀一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了
本系统中有关文件系统的信息。
-mount:在查找文件时不跨越文件系统mount点。
-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向
的⽂文件。
-cpio:对匹配的文件使⽤用cpio命令,将这些文件备份到磁带设备