linux下 find命令使用

Posted Alex·G

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下 find命令使用相关的知识,希望对你有一定的参考价值。

 

 按名称查找  find . -name filename

[root@vps repo]# ls

README.md vps.sh
[root@vps repo]# find . -iname vps*
./vps.sh
[root@vps repo]# find . ! -iname vps* | grep -v ‘^./.‘
.
./README.md
[root@vps repo]#

 

按文件类型查找

使用-type可以指定搜索的文件类型,linux/unix将所有的的一切都视为文件(文件类型有:普通文件f,目录d,符号链接 l,字符设备c,块设备b,套接字s,FIFO-p),使用 -type选项我们能够对文件类型进行过滤

 find . -type f | grep -v ^./.

 

根据文件的时间戳进行搜索

Linux/Unix文件系统中的每一个文件都有三种时间戳,访问时间(-atime),修改时间(-mtime),变化时间(-ctime),单位为天数,用整数指定,数字前加上+,表示大于这个时间;加上-,表示小于这个天数;不加表示刚好这个天数

find . -atime -1 -name *.sh

 

基于文件大小的搜索

find提供了指定文件大小的单位选项进而搜索符合大小文件的功能 (b:块, c:字节, w:字, k:千字节, M:兆字节, G:吉字节)。

 find . -size +2k

 

基于文件权限和所有权的匹配

-perm选项指定了find指匹配指定权限的文件,参数为文件对应的权限码

find . -perm 755

 

按要求查找后删除文件

 find . -perm 755 -delete
find . -user alex -exec rm -rf {} ;
find / -name filename -exec rm -rf {} ;

 

以上是关于linux下 find命令使用的主要内容,如果未能解决你的问题,请参考以下文章

Linux基础教程 linux下使用find命令根据系统时间查找文件用法

linux find命令查找当前目录下7天前的文件但排除所有目录

Linux下的find命令

Linux下完美使用find+grep实现全局代码搜索

linux下 find命令使用

Linux find 命令从跟目录下查找为啥会没有显示没有权限的错误