首页 > 系统教程 > LINUX > 正文

Linux中find命令可用的选项及参数

WBOY
发布: 2024-01-03 10:55:19
转载
1624人浏览过
使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用。 可以使用某种文件名模式来匹配文件,记住要用引号将文件名模式引起来。 不管当前路径是什么,如果想要在自己的根目录$HOME中查找文件名符合*.log的文件,使用~作为 'pathname'参数,波浪号~代表了当前用户的家目录。

查找当前登录用户家目录的.log文件:

> find ~ -name "*.log"
登录后复制

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

> find . -name "[A-Z]*"
登录后复制

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

> find /etc -name "sys*"
登录后复制

询当前目录下以大写字母开头+3位数字的.png的图片

> find . -name "[A-Z]*[0-9][0-9][0-9].png"
登录后复制

用perm选项:

按照文件权限模式用-perm选项,按文件权限模式来查找文件的话。最好使用八进制的权限表示法。如在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其他用户可以读、执行的文件,可以用


> find . -perm 755 
登录后复制

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

忽略某个目录:

如果在查找文件时希望忽略某个目录,因为你知道那个目录中没有你所要查找的文件,那么可以使用-prune选项来指出需要忽略的目录。在使用-prune选项时要当心,因为如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略。如果希望在当前目录下查找文件,但不希望在./bin目录下查找,可以用


> find . -path "./bin" -prune -o -print
登录后复制

避开多个文件夹:

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

登录后复制

圆括号表示表达式的结合。\表示引用,即指示shell不对后面的字符作特殊解释,而留给 find命令去解释其意义。

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

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

登录后复制

<span style="background-color: initial;">user nouser</span><span style="background-color: initial;">group nogroup</span>

在当前目录查找所属主是root的文件

> find . -user root 

登录后复制

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

> find . -nouser

登录后复制

在当前目录查找所属组是root的文件:

> find . -group root 

登录后复制

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

> find . -nogroup

登录后复制

按时间查找文件

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

Find JSON Path Online
Find JSON Path Online

Easily find JSON paths within JSON objects using our intuitive Json Path Finder

Find JSON Path Online 30
查看详情 Find JSON Path Online
> find . -mtime -7

登录后复制

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

> find . mtime +7

登录后复制

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

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

> find . -newer a.log ! -newer b.log

登录后复制

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

> find . -newer a.log

登录后复制

type选项

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

> find /etc -type d

登录后复制

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

> find /etc -type l

登录后复制

size参数

可以按照文件长度来查找文件,这里所指的文件长度既可以用块(block)来计量,也可以用字节来计量。以字节计量文件长度的表达形式为N c;以块计量文件长度只用数字表示即可。在按照文件长度查找文件时,一般使用这种以字节表示的文件长度,在查看文件系统的大小,因为这时使用块来计量更容易转换。

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

> find . -size +100M

登录后复制

使用depth选项:

在使用find命令时,可能希望先匹配所有的文件,再在子目录中查找。使用depth选项就可以使find命令这样做。这样做的一个原因就是,当在使用find命令向磁带上备份文件系统时,希望首先备份所有的文件,其次再备份子目录中的文件。

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

> find test -depth! -empty

test/test1/test2/test3

test/test1/test2

test/test1

test
登录后复制

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

> find test ! -empty

test

test/test1

test/test1/test2

test/test1/test2/test3
登录后复制

mount选项:

在当前的文件系统中查找文件(不进入其他文件系统),可以使用find命令的mount选项。

从当前目录开始查找位于本文件系统中文件名以.txt结尾的文件:

> find . -mount -name "*.txt"-print

登录后复制

以上就是Linux中find命令可用的选项及参数的详细内容,更多请关注php中文网其它相关文章!

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:脚本之家网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号