1、find 命令手册find 相关命令和参数的相关说明 find - 在目录层次中寻找文件参数说明:-daystart 从今天也不从 24小时之前开始计量时间(对 -amin, -atime, -cmin, -ctime, -mmin, 和-mtime 有效)。 -depth 先搜索目录的内容再搜索目录本身。 -follow 不检索符号链接。意即 -noleaf。 -help, -help 列出 find的命令行用法的概要,然后返回 -maxdepth levels 在命令行下目录的最大深度级别(非负整数),-maxdepth 0 意味着只在命令行参数中应用检测和事件。 -mindepth le
2、vels 小于指定数字(非负整数)的深度级别的目录层次将不应用检 测和事件。-mindepth 1意味着除了当前的命令行参数外 将搜索所有的文件。 -mount 在其它文件系统中不进入目录。 -noleaf 不优化假如某一个目录里包含少于两个以下的子目录。这个选 项在那些不遵循 UNIX文件系统链界约定的文件系统中用,像 CD-ROM,MS-DOS或 AFS卷加载点上。在 UNIX文件系统中,每个 目录有至少两个硬链接,它的名字和.。它的子目录(假如有) 各自有一个.链接到它本身。在 FIND检索一个目录时,在统 计其子目录少于两个,意味着将不需要在进行下去了。只需要 检索一下这个目录名;这在
3、检索速度上是个有意义的提高。 -version, -version 显示 FIND的版本号,终止程序。 -xdev 在其它文件系统中不进入目录。 说明:用下边的格式可以指定数字参数 +n 比 n大。 -n 比 n小。 n 恰好是 n。 -amin n 文件最后一次访问是在 n分钟前。 -anewer file 文件最后访问时间比指定的 file修改时间更晚。 -anewer 会 受到-follow 的影响当在命令行中-follow 在anewer 之前时。 -atime n 文件最后一次访问是 n*24小时前。 cmin n 文件的状态的改变是在 n分钟前。 -cnewer file 文件状态
4、的改变比指定的 file状态的改变时间更晚。-cnewer 会受到-follow 的影响当命令行中-follow 在-cnewer 之前时。 -ctime n 文件状态的改变时间是在 n*24小时前。 -empty 文件是空的,它是一个正规的文件或目录。 -false 总是假。 -fstype type 文件是 type类型。在不同的 unix系统中有多种不同的文件系 统类型。在一些不同版本的 unix中有效的文件类型有:ufs, 4.2, 4.3, nfs, tmp, mfs, S51k, S52k.你可以用 -printf加上%F 指示来看你的文件系统的类型。 -gid n 文件的数字型组
5、 ID是 n. -group gname 文件属于组 gname(允许数字型的 gname). -ilname pattern 同-lname, 但是匹配是大小些不区分的. -iname pattern 同-name,但是匹配是大小些不区分的。举个例子,这个通配符 fo*和f?匹配文件名Foo, FOO, foo, fOo,等 等。 -inum n 文件的 i结点数是 n. -ipath pattern 同 -path, 但是匹配大小写不区分。 -iregex pattern 同 -regex, 但是匹配大小写不区分. -links n 文件有 n个链结。 -lname pattern 文件是
6、个符号链结内容匹配 shell通配符 pattern。元字符 /或.不能区别对待。 -mmin n 文件的数据最后一次被编辑是在 n分钟前. -mtime n 文件的数据最后一次被编辑是在 n*24小时前. -name pattern 基本的文件名(起始的目录已经检测过了)匹配 shell通配符 pattern.元字符(*, ?, 和)不能匹配一个以. 开头的文件名。忽略在它下边的目录或文件,用-prune;参看 -path描述中的例子。 -newer file 文件最后编辑时间比指定的 file晚 -newer会受到-follow 的影响当在命令行中-follow 在-newer 之前时。
7、-nouser 没有用户符合文件的数字型用户 ID. -nogroup 没有组符合文件的数字型组 ID. -path pattern 文件名匹配 shell通配符 pattern.元字符不能区分/和.; 因此,像例子 find . -path ./sr*sc 将列出一个目录条目./src/misc(假如它存在的话). 忽略整个目录树,用-prune 比检测树中的每一个文件要好一 些。举个例子,跳过src/emacs和它下边的所有文件,列出 其它发现的文件,执行下边的命令: find . -path ./src/emacs -prune -o -print -perm mode 文件的访问权限位
8、恰好是 mode(八进制或符号).符号模式用 模式 0做为开始。 -perm -mode 文件的所有访问权限位 mode都设了。 -perm +mode 文件的一些访问权限位 mode设了。 -regex pattern 文件匹配规则的表达式通配符。这是一个在整个路径中的 匹配,而不是一个检索。举个例子,匹配一个./fubar3 文件名的文件,你应该用规则的表达式.*bar.或.*b.*3, 而不是b.*r3. -size nbckw 文件占用 n个单元空间。在缺省时或 n后边跟着字符 b时,这个 单元是 512字节的块,n 后边跟着 c是字节,n 后边跟着 k是千字节, n后边跟着 w是两个
9、字节的词.文件大小不能计算间接的块,但是 能计算很少的没能实际分配大小的文件。 -true 总是真 -type c 文件是类型 c: b 块(缓冲)设备. c 字符设备. d 目录. p 有名管道(FIFO). f 规则文件. l 符号链结. s 插座. -uid n 文件的数字型用户 ID是 n. -used n 文件的最后访问时间是在它的状态改变时间的 n天前. -user uname 文件是属于名为 uname(数字型 ID也可)的用户。 -xtype c 这一项是和-type 相同的除非文件是一个符号链结。 若是符号链结:假如 -follow 没有给出,若这个文件链结 的是类型为 c的
10、文件,则返回真;假如给了-follow 选项,若 c 为l,则返回真.对于符号链结, -xtype 检测链结的文件类 型,-type 不做这样的检测。 事件 -exec command ; 执行命令;返回的状态值为零则为真。所有在这之后的参数 都是 command的参数,直到遇到;.字符串将被当前的 文件名代替,作为当前命令的参数,并不是象一些版本 FIND 一样是个单独存在的一个参数,这些语句应该被转义(用) 或被引用,以此来保护他们被 SHELL展开。这个命令将在起始 目录被执行。 -fls file 值为真;同 -ls 但像 -fprint 一样将输出写向文件 file -fprint
11、file 值为真;输出整个文件名到文件 file中.当 find运行时 file不 存在,它将被建立;若存在,原来的文件内容将被删掉。也可以 用名为“/dev/stdout“和“/dev/stderr“的文件,它们分别指 的时是标准输出和标准错误。 -fprint0 file 值为真;同 -printf 但是将像 -fprint 一样将输出写像文 件 file. -ok command 同 -exec 但是先问用户(在标准输入);假如应答不是以y或 Y开头,将不执行 command,返回假。 -print 值为真;在标准输出上输出整个文件名,并加一个新行。 -print0 值为真;在标准输出上
12、输出整个文件名,并加一个空字符。这 将允许 6 其它程序能正确的处理在 FIND输出中包含新行的文件名。 -printf format 值为真。通过解释转义字符和指示字符%,格式化输出 到标准输出上.空间宽度和精度能像 c函数printf一样被 指定。不像 -print, -printf 不能在字符串的末尾自动加 一个新行。这些转义和指示字符是: a 鸣声. b 退格键. c 马上停止格式输出,输出到标准输出上。 f 换页符. n 行符. r 回车符. t 水平制表符. v 竖直制表符. 反斜线. 一个字符后跟着其它字符将被视为普通字符,它们都将 被输出。 % 符号%. %a 在格式输出中通过
13、调用 c函数ctime返回文件的 最后访问时间。 %AK 用 K指定的格式输出文件的最后访问时间。K 可以 是或者 C函数strftime函数的一个指示。有 效的 K值列在下边;它们不一定在所有的系统中都 有效,主要取决于这些系统中strftime函数的 异同。 从 Jan. 1, 1970, 00:00 GMT到 现在的秒数。 时间域: H 点钟 (00.23). I 点钟 (01.12). k 点种 ( 0.23). l 点钟 ( 1.12). M 分钟 ( 00.59). p 本地的上午或下午. r 时间,12 小时格式 (hh:mm:ssAPM). S 秒钟 (00.61). T 时间
14、,24 小时格式 (hh:mm:ss). X 本地的时间表示 (H:M:S). Z 时区 (举例来说,EDT(美国东部时区),或没 有表示没有可决定的时区。 日期域: a 本地缩写的星期名 (Sun.Sat). A 本地完全的星期名,不定长 (Sunday.Saturday). b 本地缩写的月份名 (Jan.Dec). B 本地完全的月份名,不定长 (January.December). c 本地的日期和时间 (Sat Nov 04 12:02:33 EST 1989). d 当月的哪一天 (01.31). D 日期 (mm/dd/yy). h 同 b. j 当年的哪一天 (001.366)
15、. m 月份 (01.12). U 当年的星期数,用星期日做为一星期的第一天 (00.53). w 星期的哪一天 W 当年的星期数,用星期一做为一星期的第一天 (00.53). x 本地的日期表示法 (mm/dd/yy). y 当年的最后两位数 (00.99). Y 年份 (1970.). %b 用 512字节的块计算的文件的大小(上舍入)。 %c 用 C函数ctime返回的文件状态的最后改变时间。 %Ck 被 k指定的文件状态的最后改变时间,k 与%A 后的 k相同. %d 文件在目录树中的深度;0 意味着文件在命令行参数中. %f 不带目录的文件名(只有最后的元素). %F 这个文件所在的
16、文件系统类型名;这个值能被 -fstype 用。 %g 文件的组名,若组无名则是组 ID. %G 文件的数字组 ID. %h 文件的主目录 (除了最后的元素). %H 命令行参数若文件在命令行参数中找到. %i 文件的 i节点数 (10 进制格式). %k 用 1K字节的块计算文件的大小(上舍入)。 %l 符号链接的目标(假如文件不是一个符号链接则返回一个 空字符串). %m 文件的访问权限位 (八进制) %n 文件的硬链接数 %p 文件名. %P 用在命令行参数之下发现的文件名代替文件名. %s 用字节计算的文件大小. %t 用 C函数ctime返回的文件的最后编辑时间。 %Tk 被 k指定
17、格式的文件的最后编辑时间,k 与%A 后的 k相同. %u 文件的用户名,若没有则输出用户数字 ID. %U 文件的数字 ID. 字符%后跟着另外的字符将被丢弃(但是其它的字符将输出). -prune 假如 -depth 没指定,值为真;不进入当前的目录。 若 -depth 给定,值为假;没作用. -ls 值为真;用 ls -dils格式在标准输出中列出当前目录的文件。 块记数单位是 1k字节,除非 设定了 POSIXLY_CORRECT环境变量, 将用 512字节作为单位。 操作符 列出优先级顺序 ( expr ) 强制优先. ! expr 假如 expr为假则为真. -not expr 同 ! expr. expr1 expr2 和操作(默认); 假如 expr1值是假 expr2不能鉴定。 expr1 -a expr2 同 expr1 expr2.
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。