linux常用基础命令——文件搜索命令

不管是Linux系统还是Windows系统最好是少用搜索,在服务器规划时就规划好文件的存放,不要随便瞎放,因为搜索功能会占用大量的系统资源。如果实在要查找,不要在服务器业务高峰期进行此操作,查找的目录范围越小越好,搜索的条件越精准越好。

1.find

功能:文件搜索
语法:find [搜索范围] [匹配条件]

选项

  • -name
    根据文件名来查找文件
    在这里插入图片描述
    此搜索是精确搜索,不像Windows是模糊搜索,也会出现例如optab、1opt等。若想是模糊搜索则需要加上通配符。
    在这里插入图片描述
    也可以更精确,比如记得文件名是init开头,后面还有3个字符,则可以这样搜索
    在这里插入图片描述
  • -iname  不区分大小写
  • -size
    根据文件大小来查找文件
    $ find / -size +204800
    表示在根目录下查找大于100M的文件;+n 大于,-n 小于,n 等于;
    这里的数值单位为数据块,1数据块=512字节=0.5K,则100M=102400K=204800数据块
    在这里插入图片描述
  • -user
    根据所有者查找
    在这里插入图片描述
  • -group
    根据所属组查找
  • 时间属性
    • -amin  access,访问时间
    • -cmin  change,文件属性
    • -mmin  modify,文件内容
      例如:查找/etc目录下在5分钟之内被修改过属性的文件或目录
      $ find /etc -cmin -5
  • -type
    根据文件类型查找
    -f 文件,-d 目录,-l 软链接文件
  • -a
    all,用于连接多个搜索条件,同时满足
    在这里插入图片描述
  • -o
    or,用于连接多个搜索条件,满足任意一个即可
  • -exec/-ok
    组合用于对find查找出的结果进行其他操作。
    例如:在/etc目录下查找文件名为inittab的文件并显示其详细信息
    在这里插入图片描述
    -exec…{} ;为固定格式
    -exce/-ok的区别在于,-ok会有一个确认机制再次询问确认,适用于删除操作。
  • -inum
    根据i节点来查找

2.locate

功能:在资料库中查找文件。查找速度比find快,因为find是在目录下进行遍历查找,而locate是在资料库中直接查找
通过locate locate可以查到其资料库所在位置,其资料库本质是一个文件和文件夹的索引数据库。
在这里插入图片描述
locate最大的问题是,新创建文件之后索引数据库没有及时更新导致locate查不出来,针对这个问题可以查找之前使用updatedb更新一下数据库;并且/tmp临时目录下的文件没有存在索引数据库中
在这里插入图片描述

选项

  • -i
    不区分大小写

3.which

功能:搜索命令所在目录及别名信息
/bin和/usr/bin路径下的命令所有的用户都可以使用
/sbin和/usr/sbin路径下的命令只有root用户可以使用
在这里插入图片描述

4.whereis

功能:搜索命令所在目录及帮助文档路径

5.grep

选项

  • -i  不区分大小写
  • -v  排除指定字符,反向筛选
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值