【Linux入门】六、文件搜索命令 -- 文件搜索命令find

文件搜索命令

文件搜索命令 find

命令名称:find

命令所在路径:/bin/find

执行权限:所有用户

语法:find [搜索范围] [匹配条件]

功能描述:文件搜索

用法(以下只介绍最常用选项的用法)

1、-name 根据文件名搜索

在/tmp/dianshiju目录下查找文件名为FuYao的文件

find /tmp/dianshiju -name FuYao

与Windows下常用的搜索(搜索FuYao,只要文件名包含FuYao,都会被匹配到)不同,使用上面的搜索是精确搜索,只有文件名为FuYao的文件才会被搜索到;

通配符*的使用

如果想要搜索文件名中包含FuYao的文件,可以使用通配符*;

*代表匹配任意字符,0或多个;

*加在FuYao前面,代表以FuYao结尾;*加在FuYao后面,代表以FuYao开头;

?的使用

?代表匹配单个任意字符,使用方法如下:

FuYao??代表文件名为FuYao后面加任意两个字符

2、-iname 根据文件名搜索(不区分大小写)

前面的学习我们了解到,Linux严格区分大小写,所以假如使用find /tmp/dianshiju -name FuYao命令,只能找到FuYao文件,类似fuyao,FUYAO等都无法找到,如果想要在查找时不区分大小写,可以使用-iname选项,用法与-name一样;

3、-size 根据文件大小搜索

在根目录下查找大于100MB的文件

find / -size +204800

解释如下:

+n 大于  -n 小于  n 等于

文件大小的单位是数据块,在Linux中,一个数据块大小是512字节(0.5KB),100MB=102400KB=204800数据块

(部分查找到的结果显示:没有那个文件或目录,因为查找的是内存目录/proc,文件经常发生变化,所以是正常的)

4、-user 根据所有者查找

相应的,根据所属组查找是:-group

5、-type 根据文件类型查找

f表示文件,d表示目录,l表示软链接

6、连接选项-a -o -exec/-ok

1)-a 表示and,两个条件同时满足

查找FuYao而且类型为文件

2)-o 表示or,两个条件满足任意一个即可

用法同-a

3)-exec/-ok 命令 {} \;  对搜索结果执行命令

在/tmp/dianshiju目录下查找FuYao 文件并显示其文件属性

find /tmp/dianshiju -name FuYao -exec ls -lh {} \; 

-exec和-ok不同在于,-ok会进行询问,比如在搜索后进行删除操作,可能一般需要确认一下,可以使用-ok

7、-inum 根据i节点查找

可以使用-inum来查找某文件的硬链接文件(硬链接不能跨分区使用,只要在本分区内搜索,就可以找到是否存在硬链接文件)

猜你喜欢

转载自blog.csdn.net/weixin_39723165/article/details/81055497