本文将说明在linux操作系统当中find命令的高效使用,让你在linux的文件海洋里查找某个文件事半功倍。
案例一:
如果你的linux服务器上有一个名为logs的目录,如何删除该目录下最后一次访问时间超过一年的日志文件:
find . -type f -atime +365 -exec rm -rf {} ;
{}是用于查找结果的占位符,-exec后面的命令必须是分号结束,find命令使用;作为-exec选项参数的结尾,是为了转义分号,确保它被视为命令参数的一部分而不是Shell命令的分隔符。
案例二:
在当前目录下查看名为test.txt的文件:
find . -name test.txt
案例三:
查找所有格式为pdf的书籍,使用正则表达式:
find . -type f -name "*.pdf"
案例四:
查找不同类型的文件,通过-type选项来达到需求
例如目录:
find . -type d -name "adc*"
例如软链接:
find . -type l -name "abc*"
案例五:
按指定的时间戳查找文件,linux系统中的3个不同的时间戳
访问时间戳(atime):最后一次读取文件的时间。
修改时间戳(mtime):文件内容最后一次被修改的时间
更改时间戳(ctime):上次更改文件元数据的时间
搜索ctime在5~10天前的文件:
find . -type f -ctime +5 -ctime -10
案例六:
查找大小为10MB~1GB的文件:
find . -type f -size +10M -size 1G
案例七:
查找权限具有777的文件:
find . -type f -perm 777