京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Linux之find命令的参数

2024-11-4 15:49| 发布者: 2ae29| 查看: 192| 评论: 0

摘要: [code]使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用。 可以使用某种文件名模式来匹配文件,记住要用引号将文件名模式引起来。 不管当前路径是什么,如果想要在自
[code]使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用。 可以使用某种文件名模式来匹配文件,记住要用引号将文件名模式引起来。 不管当前路径是什么,如果想要在自己的根目次$HOME中查找文件名符合*.log的文件,使用~作为 'pathname'参数,波浪号~代表了当前用户的家目次。[/code]

查找当前登任命户家目次的.log文件:

[code] > find ~ -name "*.log"[/code]

查找当前目次下以大写字母开头的文件:

[code] > find . -name "[A-Z]*"[/code]

查找/etc目次下以sys开头的文件:

[code] > find /etc -name "sys*"[/code]

询当前目次下以大写字母开头+3位数字的[code].png[/code]的图片

[code] > find . -name "[A-Z]*[0-9][0-9][0-9].png"[/code] [code]用perm选项: 按照文件权限模式用-perm选项,按文件权限模式来查找文件的话。最好使用八进制的权限表现法。如在当前目次下查找文件权限位为755的文件,即文件属主可以读、写、实验,其他用户可以读、实验的文件,可以用[/code] [code] > find . -perm 755 [/code]

[code]find -perm -mode [/code], 表现mode中转换成二进制的1在文件权限位里面必须匹配,比如mode=644那么转换成二进制为110 100 100,而被查找的文件的权限位也可以被转换成一个二进制数,两者在位上为1的部门必须完全匹配,而0则不管。比方被查找的文件的权限为转换成二进制数是111 111 111那么这个比如被匹配,而如果是100 100 100那么则不会匹配。以是这个'-'的作用归结起来就是匹配比mode权限更富足的文件(找不到什么词语来形容了)

[code]忽略某个目次: 如果在查找文件时希望忽略某个目次,由于你知道谁人目次中没有你所要查找的文件,那么可以使用-prune选项来指出必要忽略的目次。在使用-prune选项时要当心,由于如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略。如果希望在当前目次下查找文件,但不希望在./bin目次下查找,可以用[/code] [code] > find . -path "./bin" -prune -o -print[/code]

避开多个文件夹:

[code] > find . \( -path "./bin" -o -path "./doc" \) -prune -o -print [/code]

圆括号表现表达式的联合。\表现引用,即指示shell不对背面的字符作特别解释,而留给 [code]find[/code]命令去解释其意义。

查找某一确定文件,-name等选项加在-o 之后:

[code] > find . \( -path "./bin" -o -path "./doc" \) -prune -o -name "*.txt" -print [/code]

[code]user nouser[/code][code]group nogroup[/code]

在当前目次查找所属主是[code]root[/code]的文件

[code] > find . -user root [/code]

查找当前目次所属主被删除的文件:

[code] > find . -nouser [/code]

在当前目次查找所属组是[code]root[/code]的文件:

[code] > find . -group root [/code]

查找当前目次所属组被删除的文件:

[code] > find . -nogroup [/code]

按时间查找文件

查找更改时间在7日以内的文件:

[code] > find . -mtime -7 [/code]

查找更改时间在7日从前的文件:

[code] > find . mtime +7 [/code]

查找比某个文件新或旧的文件

查找更改时间比文件a.log新但比文件b.log旧的文件:

[code] > find . -newer a.log ! -newer b.log [/code]

查找更改时间在比a.log文件新的文件:

[code] > find . -newer a.log [/code]

type选项

在/etc目次下查找所有的目次:

[code] > find /etc -type d [/code]

在/etc目次下查找所有的符号链接文件:

[code] > find /etc -type l [/code] [code]size参数 可以按照文件长度来查找文件,这里所指的文件长度既可以用块(block)来计量,也可以用字节来计量。以字节计量文件长度的表达情势为N c;以块计量文件长度只用数字表现即可。在按照文件长度查找文件时,一般使用这种以字节表现的文件长度,在检察文件系统的巨细,由于这时使用块来计量更容易转换。[/code]

在当前目次下查找文件长度大于100M字节的文件

[code] > find . -size +100M [/code] [code]使用depth选项: 在使用find命令时,大概希望先匹配所有的文件,再在子目次中查找。使用depth选项就可以使find命令这样做。这样做的一个缘故原由就是,当在使用find命令向磁带上备份文件系统时,希望首先备份所有的文件,其次再备份子目次中的文件。[/code]

先输出子内容,再输出上层目次内容,直到最顶层:

[code] > find test -depth ! -empty test/test1/test2/test3 test/test1/test2 test/test1 test[/code]

先输出顶层目次,再输出下面的各层子目次内容,直到最低层:

[code] > find test ! -empty test test/test1 test/test1/test2 test/test1/test2/test3[/code] [code]mount选项: 在当前的文件系统中查找文件(不进入其他文件系统),可以使用find命令的mount选项。[/code]

从当前目次开始查找位于本文件系统中文件名以.txt末端的文件:

[code] > find . -mount -name "*.txt" -print [/code]

到此这篇关于 Linux之find命令的参数的文章就先容到这了,更多相干 Linux之find命令参数内容请搜索脚本之家从前的文章或继续欣赏下面的相干文章,希望各人以后多多支持脚本之家!


来源:https://www.jb51.net/LINUXjishu/806681.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
关闭

站长推荐上一条 /6 下一条

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2025-7-1 19:20 , Processed in 0.035049 second(s), 19 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2025 Discuz! Team.

返回顶部