当前位置: 首页 > Linux

Linux下如何查找文件

时间:2023-04-06 02:54:15 Linux

目的find命令用于查找指定目录下的文件。不带参数的全名-name:后跟需要匹配的文件名模式,需要用引号括起来。下面举几个简单的查找例子:(~表示$HOME目录)1、在当前$HOME下查找以'.log'结尾的文件find~–name"*.log"–print2。在当前目录和子目录中查找所有以'.log'结尾的文件find。–name"*.log"–print3。在当前目录及子目录中查找文件名以大写字母开头的文件查找。–名称“[A-Z]”–print4。在/etc目录下找到文件名以host开头的文件find/etc–name"host*"–print5。在当前目录下查找以小写字母开头的文件名开头,结尾为4到9加上以.txt结尾的文件find。--name"[a-z]*[4-9].txt"--printfindfilebyname-iname:根据文件名查找文件,不区分大小写1.查找文件名以.log结尾的文件,不区分大小写find.--iname"*.log"--print-perm:后面是文件权限,按照文件权限方式查找文件1.在当前目录下查找文件权限为777的文件find。--perm777--printhowtoFindfileinLinux-prune:Ignoreacertaindirectory1.希望在tmp下找到,但不想在/tmp/tmp1下找到。找到测试路径“/tmp/tmp1”–prune–o–print2。我希望能在tmp下找到,但不想在/tmp/tmp1、/tmp/tm2、/tmp/tmp3等多个文件夹下找到。findtest(–pathtmp/tmp1–o–pathtmp/tmp2–o–pathtmp/tmp2)–prune–o–print-userandnouser:根据文件属主查找并查找属主账号已被删除的文件1.查找属主为qinys的所有文件find~-用户qinys–print2。查找删除用户tom的文件find/home–nouser–print-groupandnogroup:根据文件所属的用户组查找删除的文件1.查找所有者为qinys的文件所有文件find~–groupgp1-print2。查找删除用户Tom的文件find/home–nogroup–print-mtime\atime\ctime:根据更改时间或访问时间查找文件1.在根目录下查找更改时间在5天内的文件find/–mtime-5–打印2。在/home目录下查找文件3天前find/–mtime+3–print10linuxfindexecexamples-newer:查找所有更改时间比一个文件新但比另一个文件旧的文件语法:new_file_name!old_file_name在哪里!它是一个逻辑非符号1.找到一个文件,其更改时间比文件a.log新,但比文件b.log旧(如果它现在在目录/home中)find–newera.log!-newerb.log2.Findchanges查找时间比tmp.log更新的文件。--newertmp.log-size:根据文件大小查找文件(这里,文件长度可以用块或字节来衡量)1.查找当前目录查找长度大于1M字节的文件。–尺寸+1000000c–print2。在目录/homefind中查找长度恰好为100字节的文件。–尺寸100c–print3。在当前目录File中查找长度超过10块的文件(一个块等于512字节)find.–size+10–print-type:查找某一类型的文件,如:b——块设备文件d——目录。c-一个字符设备文件。p-管道文件。l-符号链接文件。f-普通文件。案例一、在目录中查找6天前更改过的文件并删除(注:今天是20190109)。从上图中我们可以看到,匹配到搜索的文件test.sh已经被删除了。2.查找目录变化删除1天前后缀为.log的文件并删除。删除时提示20advancedLinuxfindExamples