find

用途

查找文件或目录。

语法

find [目录...][-amin <分钟>][-anewer <参考文件或目录>][-atime <24小时数>]
[-cmin <分钟>][-cnewer <参考文件或目录>][-ctime <24小时数>][-daystart][-depyh]
[-empty][-exec <执行指令>][-false][-fls <列表文件>][-follow][-fprint <列表文件>]
[-fprint0 <列表文件>][-fprintf <列表文件><输出格式>][-fstype <文件系统类型>]
[-gid <群组识别码>][-group <群组名称>][-help][-ilname <范本样式>][-iname <范本样式>]
[-inum ][-ipath <范本样式>][-iregex <范本样式>][-links <连接数目>][-lname <范本样式>]
[-ls][-maxdepth <目录层级>][-mindepth <目录层级>][-mmin <分钟>][-mount]
[-mtime <24小时数>][-name <范本样式>][-newer <参考文件或目录>][-nogroup][noleaf]
[-nouser][-ok <执行指令>][-path <范本样式>][-perm <权限数值>][-print][-print0]
[-printf <输出格式>][-prune][-regex <范本样式>][-size <文件大小>][-true]
[-type <文件类型>][-uid <用户识别码>][-used <日数>][-user <拥有者名称>]
[-version][-xdev][-xtype <文件类型>]

描述

find指令用于查找符合条件的文件。任何位于参数之前的字符串都将被视为欲查找的目录。假如没有指定参数,则会以“-print”参数做为预设值。

参数

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

例子

检查 /home 目录下,最近24小时之内有更改的文件:

$ find /home -mtime -1 -print

找出整个系统中,不属于任何用户或群组的文件,并把查找结果存成名称为 nobody 的列表文件:

$ find / -nouser -nogroup -fprint nobody

相关命令

shells/commands/find.txt · 最后更改: 2010/03/30 13:01 (外部编辑)
[unknown link type]到顶部
GNU Free Documentation License 1.3
京ICP备05034962号 Debian Driven by DokuWiki get firefox browser Recent changes RSS feed Valid XHTML 1.0