0

0

Linux中如何使用Find命令查找文件

青灯夜游

青灯夜游

发布时间:2019-03-15 16:25:35

|

5474人浏览过

|

来源于php中文网

原创

linux find命令是linux系统管理员工具库中最强大的工具之一,它允许我们根据用户给定的表达式搜索目录层次结构中的文件和目录,对每个匹配的文件应用用户指定的操作。下面本篇文章就来带大家了解一下find命令的方法,希望对大家有所帮助。

Linux中如何使用Find命令查找文件

Linux  Find命令

使用find命令根据文件权限,类型,日期,所有权,大小等搜索文件。它还可以与其他工具结合使用,例如grep或sed对这些文件执行操作

在讨论如何使用find命令之前,我们先来了解一下基本语法:

find [options] [path...] [expression]

说明:

 ● options属性:控制符号链接,调试选项和优化方法的处理。

 ● path...属性:定义了find将搜索文件的起始目录。

 ● expression属性:由“options”,“搜索模式”和“由运算符分隔的操作”组成。

我们来看看下面的例子:

find  -L /home/projects/ -name "*.js" -exec chmod 644 {} \;

说明:此命令包含一个参数-L(options),它允许find命令跟随符号链接,搜索/home/projects/(path ...)下面的整个目录树,查找以.js(expression)结尾的所有文件,并将所有匹配文件的权限设置为644。

如何按类型查找文件?

要指定要查找的文件类型,需要使用-type参数。

可以使用以下描述符指定文件类型:

 ● f:常规文件

 ● d: 目录

 ● l:符号链接

 ● c:角色设备

 ● b:块设备

 ● p:命名管道(FIFO)

 ● s:套接字

示例:

如果要查找当前工作目录中的所有目录,可以使用:

find . -type d

如果要列出系统类型上的所有字符设备:

find / -type c

如何按名称查找文件?

按名称查找文件可能是find命令最常用的用法。要按名称查找文件,需要将该-name选项与要搜索的文件的名称一起传递。

示例:

要在/home/linuxize目录中搜索名为document.pdf的文件,可以使用以下命令:

sudo find /home/linuxize -type f -name document.pdf

如果要运行不区分大小写的搜索,可以-name使用-iname以下命令更改选项:

sudo find /home/linuxize -type f -iname document.pdf

说明:上面的命令将匹配Document.pdf,DOCUMENT.pdf ..等。

如何按扩展名查找文件?

按扩展名搜索文件与按名称搜索文件相同。

例如:

如果要查找以.log.gzinside /var/log/nginx目录结尾的所有文件,可以使用:

find /var/log/nginx -type f -name '*.log.gz'

如果要查找与正则表达式不匹配的所有文件,*.log.gz可以使用该-not参数。例如,要查找不以*.log.gz您结尾的所有文件,请使用:

find /var/log/nginx -type f -not -name '*.log.gz'

如何按大小查找文件?

要根据文件大小查找文件,需要将-size参数与大小条件一起传递。可以使用以下后缀指定文件大小:

php 配置文件php.ini的中文注释版(09.4)
php 配置文件php.ini的中文注释版(09.4)

在WINDOWS下,编译时的路径是WINDOWS安装目录。 ; 在命令行模式下,PHP.INI的查找路径可以用 -C 参数替代。 ; 该文件的语法非常简单。空白字符和用分号´;´开始的行被简单地忽略(就象你可能 ; 猜到的一样)。 章节标题(例如 : [FOO])也被简单地忽略,即使将来它们可能 ; 有某种的意义。 ; ;

下载

 ● b:512字节块(默认)

 ● c:字节

 ● w:双字节字

 ● k:Kilobytes

 ● M:兆字节

 ● G:千兆字节

例如:

要在/tmp目录中查找完全1024字节的所有文件,可以运行以下命令:

find /tmp -type f -size 1024c

find命令还允许我们搜索大于或小于指定大小的文件。例如:

我们可以在当前工作目录中搜索小于1MB的所有文件,这需要在大小值之前添加减号:

find . -type f -size -1M

如果要搜索大小超过1MB的文件,则需要使用加号+:

find . -type f -size +1M

甚至可以搜索大小范围内的文件。例如,以下命令将查找介于1和2 MB之间的所有文件:

find . -type f -size +1M -size 21M

如何按修改日期查找文件?

find命令还可以根据上次修改,访问或更改时间来搜索文件。

与按大小搜索时相同,可以使用加号和减号来指定大于或小于。

例如:

几天前你修改了一个dovecot配置文件,但你忘了文件名。我们可以很容易地筛选以.conf结尾的/etc/dovecot/conf.d/目录中的所有文件,这些文件在过去5天内被修改为:

find /etc/dovecot/conf.d -name "*.conf" -mtime 5

我们还可以列出30天或更久前修改的/home目录中的所有文件:

find /home -mtime +30 -daystart

如何按权限查找文件?

要根据文件权限过滤文件,需要使用该-perm选项。

例如:

要在/var/www/html目录中查找权限为775的所有文件:

find /var/www/html -perm 644

还可以使用减号-或斜杠/为数字模式添加前缀。

当斜杠/用作前缀时,至少一个类别(用户,组或其他类别)必须至少为文件匹配设置相应的位。

find . -perm /444

说明:搜索对用户,组或其他人设置了读权限的所有文件。

如果使用减号-作为前缀,则必须至少设置要匹配的文件。

find . -perm -664

说明:搜索对所有者和组具有读写权限的文件,并且其他用户可以读取。

如何按所有者查找文件?

要查找特定用户或组拥有的文件,可以使用-user和-group选项。

例如,要搜索用户拥有的所有文件和目录linuxize,可以运行:

find / -user linuxize

这是更高级的示例,假设是希望查找用户www-data拥有的所有文件,并将匹配文件的所有权从www-data更改为nginx:

find / -user www-data -type f  -exec chown nginx {} \;

相关视频教程推荐:《linux教程

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2305

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1516

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1410

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

951

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1413

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1233

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1444

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1304

2023.11.13

c++主流开发框架汇总
c++主流开发框架汇总

本专题整合了c++开发框架推荐,阅读专题下面的文章了解更多详细内容。

3

2026.01.09

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 6.9万人学习

Git 教程
Git 教程

共21课时 | 2.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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