一、命令介绍

find 命令用于按照指定条件来查找文件。

一些比较常用参数如下表

参数

作用

-name

匹配名称

-perm

匹配权限mode为完全匹配( –mode包含即可)

-user

匹配所有者

-group

匹配所有组

-mtime –n +n

匹配修改内容时间(-n n天以内 +n n天之前)

-atime –n +n

匹配访问内容时间(-n n天以内 +n n天之前)

-ctime –n +n

匹配修改文件权限时间(-n n天以内 +n n天之前)

-nouser

匹配无所有者文件

-nogroup

匹配无所有组文件

-newer file1 !file2

匹配比file1新 比file2旧的文件

--type b/d/c/p/l/f

匹配文件类型(参数依次块设备、目录、字符设备、管道、链接文件、文本文件)

-size

匹配文件的大小(+为超过设定值大小的文件,-为小于设定值大小的文件)

-prune

忽略某个目录

-exec…………{}\;

后面可跟用于进一步处理搜索结果的命令

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

二、实例

想要搜索 /etc 目录下 ,文件名以pass开头的文件有哪些,我们该如何操作呢?

find  /etc -name "pass*"

可以看到,当我执行完上述命令后,/etc 及其子目录下所有文件名以 pass 开头的文件就全部列出了

如果我们想要搜索 /home 目录下所有的一般文本文件,该怎么操作呢?

find   /home -type f

我们要搜索 /home 目录下 修改时间是天内的文件,

find  /home -mtime - 1

同理, -a  -c 参数 根据自己不同的筛选条件来使用。

查找当前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件,并显示出这些文件的文件类型。

 find  -type f -perm 644 -exec file  {} \;

-exec ....... {}\; 参数类似于管道符 上述我们按照我们筛选的条件找出文件 ,利用-exec....{}\; 命令连接 file命令,实现查看文件类型。

接下来我们查找当前目录小于5K的文件,并列出文件详细信息

find -size -5k  -exec ls -l {} \;

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

三、总结

在Linux系统中,搜索工作一般都是通过find来完成的,find命令可以以不同的文件特性作为匹配条件,所有find命令非常强大,

想要熟练自如的运用Linux命令,只能通过不断的练习。

我是一个刚刚接触Linux的小白,我与你们一起学习,一起进步!

文章不当之处,望各位指正

Linux学习历程——Centos 7 find 命令的更多相关文章

  1. Linux学习历程——Centos 7 ls命令

    一.命令介绍 ls命令用于显示目录中的信息. ----------------------------------------------------------------------------- ...

  2. Linux学习历程——Centos 7 grep命令

    一.命令简介 grep 命令用于在文本中执行关键词搜索,并显示匹配的结果. 由于grep命令参数很多,这里只列出一些常用的参数. 参数 作用 -b 将可执行文件当作文本文件来搜索 -c 仅显示找到的行 ...

  3. Linux学习历程——Centos 7 ps命令基础

    一.ps命令介绍 ps命令是Process Status的缩写,用于查看系统进程状态,ps命令输出值非常多,通常结合管道符使用. 二.实例 1.我们直接输入ps命令,不加任何参数. 可以看到默认输出4 ...

  4. Linux学习历程——Centos 7 man命令

    一.man命令介绍 man,为单词manual的缩写,是linux下的帮助指令. 二.实例 以man命令为例,输入 man  man  获取man命令的帮助文档 可以看出,使用man命令查询到的帮助信 ...

  5. Linux学习历程——Centos 7 chown命令

    一.命令介绍 Linux是多人多工操作系统,所有的文件皆有拥有者.利用 chown 将指定文件的拥有者改为指定的用户或组, 用户可以是用户名或者用户ID:组可以是组名或者组ID:文件是以空格分开的要改 ...

  6. Linux学习历程——Centos 7 chmod命令

    一.命令介绍 chmod 命令,是Linux管理员最常用的命令之一,用于修改文件或目录的访问权限. Linux系统中,每一个文件都有文件所有者和所属群组,并且规定文件的所有者,所属群组,以及其他人队问 ...

  7. Linux学习历程——Centos 7 passwd命令

    一.命令介绍 passwd 命令用于修改用户密码,过期时间,认证信息等. 普通用户只能使用 passwd 命令修改自身的系统密码,而 root 管理员则有权限修改其他所有人的密码.更酷的是,root ...

  8. Linux学习历程——Centos 7 diff命令

    一.命令介绍 diff命令用于比较文本差异. diff以逐行的方式,比较文本文件的异同处.如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录. ------------- ...

  9. Linux学习历程——Centos 7 tar命令

    一.命令介绍 tar命令用于对文件进行打包压缩或解压. tar常用参数 参数 作用 -c 创建压缩文件 -x 解开压缩文件 -t 查看压缩包内有哪些文件 -r 向压缩归档末尾追加文件 -u 更新压缩包 ...

随机推荐

  1. Api管家系列(一):初探

    前段时间发现一个很好用的API管理工具--API管家,用了一段时间,已经感觉离不开了,抱着分享使我快乐的想法,因为刚开始用的时候随便写过一篇简介,不是很详细,所以现在就重新写,把我这段时间使用的经验和 ...

  2. Php如何返回json数据,前后端分离的基本解决方案

    php返回json,xml,JSONP等格式的数据 返回json数据: header('Content-Type:application/json; charset=utf-8'); $arr = a ...

  3. linux 上安装多个不同版本的mysql 踩的坑

    最近由于业务需要,考虑使用json类型,据了解 mysql 在版本5.7中可以支持 json 类型的数据支持,但同时目前开发环境中使用的是 mysql 5.6版本,上面还有很多项目的数据库在上面,同时 ...

  4. 解决微信公众号授权登录和开放平台微信第三方应用授权登录获取到的用户Openid关联问题

    开发背景: 最近一段时间一直在做关于微信方面的网站应用开发,这段时间也收获的不少关于微信开发方面的开发技能,接触的比较多的主要有微信公众号和微信网站app第三方登录授权,以及微信会员卡,优惠券和扫描二 ...

  5. 关于微信企业付款到零钱X509Certificate2读取证书信息,发布到服务器访问不到的解决方案

     前言: 最近做了一个通过调用微信企业付款到用户零钱的功能,真的挺奇怪的,在我本地调试的时候都没有问题,但是当我发布到服务上的时候却一直无法读取到我的证书信息.读取的代码如下,使用的是微信官方文档提供 ...

  6. linux-Navicat 连接数据库 报错10060 & Navicat连接报错1146

    1.mysql数据库设置远程连接权限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;[回 ...

  7. SpringBoot 2.X集成Hive-jdbc 3.1.1

    最近公司有一个需求,需求的内容是根据用户页面选择的参数条件查询Hive,数量量大致是300万以内,要求3秒响应.使用的其它的技术就不要说了,先说说SpingBoot集成Hive-jdbc吧,网上虽然有 ...

  8. JavaSSM框架报HTTP Status 500 - Servlet.init() for servlet springMvc threw exception错误

    如下,刚搭建的项目报这样的错,刚学框架的我一脸懵逼...网上很多说是jdk或者springmvc的的jar的版本问题,但是我其他项目都可以啊,所以排除了这个问题. 经过几个小时的排查,发现了我的问题所 ...

  9. .NET Core TDD 前传: 编写易于测试的代码 -- 依赖项

    第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 第2篇, 避免在构建对象时写出不易测试的代码. 本文是第3篇, 讲述依赖项和迪米特法则 ...

  10. API接口通讯参数规范(2)

    针对[API接口通讯参数规范]这篇文章留下的几个问题进行探讨. 问题1 试想一下,如果一个http请求返回一个500给我们,那我们是不是都不用看详情都知道该次请求发生了什么?这正是一个标准的结果码意义 ...