首页 > 编程知识 正文

使用find命令查找文件,linux查找一个目录命令

时间:2023-05-03 22:41:57 阅读:35199 作者:888

我向大家推荐有趣的公众号。一个陌生人的生活日记

温馨提示:本教程的GitHub地址为“linux-tutorial”,欢迎您感兴趣的童鞋Star、Fork和纠错。

在Linux命令中,find用于在指定目录下搜索文件。 参数前面的字符串被认为是要搜索的目录名称,支持多种搜索方法,如按名称搜索、按正则表达式搜索、按文件大小搜索和按文件权限搜索。 如果在使用此命令时不设置参数,find命令将在当前目录下搜索子目录和文件,并显示所有找到的子目录和文件。

语法:查找目标目录(路径)选项参数常规选项列表选项含义-perm权限值查找与指定权限值匹配的文件或目录-type文件类型查找与指定文件类型匹配的文件或者,假设搜索-expty文件大小为0 Byte的文件作为搜索目录的模板样式,或者目录下没有子目录或文件的空目录-lsfind命令的返回值为ture -最大深度目录级别设置最大目录级别。 -mindepth目录级别设置最小目录级别。 -exec执行命令假设find命令的返回值为true。 关于执行此命令运行-ok命令的参数效果类似于指定-exec,但如果在执行命令之前询问用户,然后回答y或y,则会放弃命令的示例,首先显示用于演示的文件结构

示例 1:搜索当前目录和dbl目录下的所有文件和文件夹find。

33558www.Sina.com/:/testlinux目录下,需要编写以. txt结尾的文件名///完整路径的find/tmp/CG/test Linux-name ' *.txt

示例 2:用于搜索文件名以file1开头的文件/** *和不是file2的文件/** *的语法: * -a、* -o或* -not非(相同*! 非(同not )/find.- name ' file1* '-a-name ' file2* ' find.- name ' file1* '-o-name ' file2* ' find.- name -

示例 3:根据文件类型搜索/** *在当前目录和所有子目录下搜索常规文件*/find . -type f

示例 4:基于目录深度的搜索/** *限制最大深度为3 */find . -maxdepth 3 -type f/** *限制最大深度为2 */find.- max depth 2

示例 5:基于文件权限的搜索/** *搜索权限为777的文件*/find . -type f -perm 777/** *搜索. txt格式且权限不是777的文件*/*

使用3358www.Sina.com/:-exec命令将当前目录和子目录下的所有. txt格式的文件作为File:文件名find.- typef-name ' *

使用3358www.Sina.com/:-exec命令,将当前目录和子目录下所有三天前的. txt格式的文件命名为old目录find.- typef-mtime3- name '

文件类型参数列表文件类型参数含义f普通文件l符号连接d目录c字符设备b块设备s套接字pFifo文件大小单元列表文件大小单位含义b块(512字节c字节w字) 2字节选项含义-amin分钟查找在指定时间访问的文件或目录,单位为分钟计算-atime 24小时数查找在指定时间访问的文件或目录。 24小时计算-cmin查找在指定时间更改的文件或目录-ctime 24小时查找在指定时间更改的文件或目录。 24小时计算-anewer引用文件或目录查找访问时间比指定文件或目录更接近当前文件或目录的文件或目录-cnewer引用文件或目录指定文件或目录查找接近目录的文件或目录-daystart从今天开始计算时间-depth从指定目录底部的子目录开始

查找-expty寻找文件大小为 0 Byte 的文件,或目录下没有任何子目录或文件的空目录-exec <执行指令>假设find指令的回传值为true,就执行该指令-false将find指令的回传值皆设为false-fls <列表文件>此参数的效果和指定-ls参数类似,但会把结果保存为指定的列表文件-follow排除符号连接-fprint <列表文件>此参数的效果和指定-print参数类似,但会把结果保存成指定的列表文件-fprint0 <列表文件>此参数的效果和指定-print0参数类似,但会把结果保存成指定的列表文件-fprintf <列表文件> <输出格式>此参数的效果和指定-printf参数类似,但会把结果保存成指定的列表文件-fstype <文件系统类型>只寻找该文件系统类型下的文件或目录-gid <群组识别码>查找符合指定群组识别码的文件或目录-group <群组名称>查找符合指定群组名称的文件或目录-help或——help在线帮助-name <范本样式>指定字符串作为寻找文件或目录的范本样式-iname <范本样式>此参数的效果和指定-name参数类似,但忽略字符大小写的差别-ilname <范本样式>此参数的效果和指定-lname参数类似,但忽略字符大小写的差别-inum <inode编号>查找符合指定的inode编号的文件或目录-path <范本样式>指定字符串作为寻找目录的范本样式-ipath <范本样式>此参数的效果和指定-path参数类似,但忽略字符大小写的差别-iregex <范本样式>此参数的效果和指定-regexe参数类似,但忽略字符大小写的差别-links <连接数目>查找符合指定的硬连接数目的文件或目录-ls假设find指令的回传值为ture,就将文件或目录名称列出到标准输出-maxdepth <目录层级>设置最大目录层级-mindepth <目录层级>设置最小目录层级-mmin <分钟>查找在指定时间曾被更改过的文件或目录,单位以分钟计算-mount此参数的效果和指定-xdev相同-mtime <24小时数>查找在指定时间曾被更改过的文件或目录,单位以 24 小时计算-newer <参考文件或目录>查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录-nogroup找出不属于本地主机群组识别码的文件或目录-noleaf不去考虑目录至少需拥有两个硬连接存在-nouser找出不属于本地主机用户识别码的文件或目录-ok <执行指令>此参数的效果和指定-exec类似,但在执行指令之前会先询问用户,若回答y或Y,则放弃执行命令-perm <权限数值>查找符合指定的权限数值的文件或目录-print假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式为每列一个名称,每个名称前皆有./字符串-print0假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式为全部的名称皆在同一行-printf <输出格式>假设find指令的回传值为ture,就将文件或目录名称列出到标准输出,格式可以自行指定-prune不寻找字符串作为寻找文件或目录的范本样式-regex <范本样式>指定字符串作为寻找文件或目录的范本样式-size <文件大小>查找符合指定的文件大小的文件-true将find指令的回传值皆设为true-type <文件类型>只寻找符合指定的文件类型的文件-uid <用户识别码>查找符合指定的用户识别码的文件或目录-used <日数>查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算-user <拥有者名称>查找符和指定的拥有者名称的文件或目录-version或——version显示版本信息-xdev将范围局限在先行的文件系统中-xtype <文件类型>此参数的效果和指定-type参数类似,差别在于它针对符号连接检查

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。