Linux中文件名查找---find,whereis,locate

本文介绍了在Linux系统中使用whereis、locate和find命令进行高效文件查找的方法。whereis适用于定位特定文件;locate能够快速搜索文件路径;find则可根据时间、用户、权限等多种条件精确查找文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   在Linux中查找文件通常是使用whereis和locate。因为这两个命令是利用数据库查找数据,所以速度相当快。而find命令在查找中访问了硬盘,速度相对要慢。

whereis(寻找特定文件)

格式:    whereis     [-bmsu]      文件或目录名

参数:   -b   只找二进制文件

              -m    只找说明文件manual路径下的文件

              -s     只找source源文件

              -u      查找不在上述三个选项当中的其他特殊文件



locate:

格式:locate  [ -i r ]  keyword

参数:  -i     忽略大小写差异

             -r     后面可接正则表达式的显示方法

注意:





find:  

格式      find     pathname      -options [-print -exec -ok ...]

1 与时间有关参数命:-atime   ,   -ctime    ,-mtime

以-mtime为例子:     find  -mtime   n       :   n为数字,意义为在n天之前的“一天之内”被更改过的文件

                                     find  -mtime   + n    :    列出在n天之前(不包含n)被改过的文件名

                                     find  -mtime    -n    :     列出在n天以内(包含n)被改过的文件名


find     -newer  class:class是已经存在的文件,这个指令是列出比class还要新的文件名

例:寻找/etc下面的文件,如果文件日期比/etc/passwd新就列出

        find  /etc  -newer   /etc/passwd

-newer用来分辨两个文件之间新旧关系很有用



2 与用户或用户组名有关的参数

-uid n   :   n为数字 ,这个数字是用户的账号ID,及UID。

-gid  n   :  n为数字,这个数字是用户组名的ID,及GID。

-user name  :name 为用户账号名称。

-group  name  :name 为用户组名称。

-nouser:查找文件的所有者不在/etc/passwd  的人

-nogroup:查找文件的所有用户组不存在于/etc/passwd  中的文件



3 与文件权限及名称有关的参数

-name  filename    : 查找文件名为filename的文件

  

-size    [ +- ]SIZE    :查找比size大或者小的文件。  size的单位有    c:代表byte    k表示1024bytes

      

 

-type    TYPE       : 查找文件类型为TYPE 的

                                例: b - 块设文件。
                                         d- 目录。
                                         c - 字符设备文件。
                                         p - 管道文件。
                                          l - 符号链接文件。
                                          f - 普通文件



-perm   按文件权限查找文件

            

           


其他操作  

-exec command:command为其他命令  ,-exec后可再接其他命令

-print: 将结果打印到屏幕上,这个操作是默认的,并不需要我们自己输入。



参考书《鸟哥的Linux私房菜》基础学习篇第三版   7.5.2文件名的查找

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值