Linux基础-6day-Linux文件查找命令find(1)

Linux件查找命令find(1)

1、find命令

描述:搜索文件或目录,并做相应处理

用法:find [参数选项] [路径] [表达式选项]

参数:

主要参数

意义

-name

按照文件名称查找

-iname

按照文件名称查找,不区分大小写

-perm

按照文件权限查找

-prune

不在当前指定目录找

-user

按照文件属主来查找文件

-group

按照文件属组来查找文件

-mtime-n/+n

-mmin

按照文件更改时间查找,- n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前(内容被修改)

-atime/amin n

查找系统中最后n*24小时/n分钟访问的文件(被访问)

-ctime/cmin n

查找系统中最后n*24小时/n分钟被改变文件状态的文件(修改状态,属性、权限、链接等)

-depth

从指定目录下最深层的子目录开始查找

-nogroup

查找无有效属组的文件,即该文件所属的组在/etc/groups中不存在

-nouser

查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在

-expty

寻找文件大小为0 Byte的文件,或目录下没有任何子目录或文件的空目录;

 

-exec <执行指令>

假设find指令的回传值为True,就执行该指令;

 

-newer file1 ! file2

查找更改时间比文件file1新但比文件file2旧的文件。

-type

按照文件类型查找:

b:块设备文件;c:字符设备文件;d:目录;

p:管道文件;l:符号链接文件;f:普通文件

-size n

查找长度为n块的文件,

-fstype

查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息

-mount

查找文件时不跨越文件系统挂载点

-follow

如果find命令遇到符号链接文件,就跟踪至链接所指向的文件

-cpio

对匹配的文件使用cpio命令,将这些文件备份到磁带设备中

注:

atime:访问时间(access time),指的是文件最后被读取的时间,可以使用touch命令更改为当前时间;

ctime:变更时间(change time),指的是文件本身最后被变更的时间,变更动作可以使chmod、chgrp、mv等等;

 mtime:修改时间(modify time),指的是文件内容最后被修改的时间,修改动作可以使echo重定向、vi等等。

Eg:

1)查找/目录下,名字为ping的文件

[root@test ~]#find / -name ping

2)查找3天内被修改过的文件

[root@test ~]#find -mtime -3

3)查找3天前被修改过的文件

[root@test ~]#find -mtime +3

4)查找3天前的当天被修改过的文件

[root@test ~]#find -mtime 3

(5)查找/root/shell目录下,权限为777的文件

[root@test ~]#find /root/shell -perm 777

(6)查找当前目录下,已.sh结尾的文件

[root@test ~]# find . -type f -name "*.sh"

(7)查找当前目录下大于10MB的文档

[root@test ~]# find . -size +10M

(8)查根目录下大于1MB的文件(-a 并且;-o或者)

[root@test ~]# find / -size +1M -a -type f

(9)查找当前目录下所有空文件

[root@test ~]# find . -empty

(10)查找根目录下3天前被修改的文件,并删除

[root@test ~]# find / -mtime +3 -exec rm { } \;

个人公众号:

图片.png

 

 

 

 


猜你喜欢

转载自blog.51cto.com/13440764/2576761