find命令

linux一切皆文件,因此文件查找还是比较重要的

linux下查找命令有两个

locate
find

  1. locate
    locate是对其生成的数据库进行遍历,生成数据框,updatadb
    因此查找很快,但是只能对文件进行模糊匹配
    locate -i 查找文件的时候不区分大小写,比如locate -i passwd
    locate -n 只显示查找结果的前N行,比如locate -n passwd

  2. find
    find命令不指定查找目录的话是对整个系统进行遍历查找
    find 目录 规则 查找完后的action
    find /etc /tmp /root -name passwd
    目录之间用空格分开
    1). 根据文件名查找
    -name 精确查找
    -iname 不区分大小写
    *表示通配任意字符
    ?表示通配任意单个字符
    []表示通配括号里面任意一个字符
    find /tmp -name "[ab].sh"带双引号
    2).根据用户和组查找文件
    -user -group
    3).根据uid和gid查找用户
    find /tmp -uid 500
    find /tmp -gid 1000
    4).-a and -o and -not 的使用
    -a连接两个不同条件,两个条件同时满足
    -o两个不同条件
    -not 对条件取反
    5).时间戳
    -atime 访问时间
    -mtime 修改时间
    -ctime 属性修改时间
    -amin 单位是分钟
    -mmin
    -cmin
    +n 表示多长时间内没有访问或者修改的
    -n表示多长时间内访问过或者修改的
    6).文件类型
    -type
    f 普通文件
    d 目录
    l 连接文件
    b 块文件
    p 管道文件
    s socket文件
    find /tmp -type s
    所以这个查找两个月内的文件,不查目录就可以是
    nohup find /HAS/MBSData/ -mtime -70 -not -type d > findResult.txt &
    7).根据大小查找文件
    -size

find /tmp -size 2M 等于2M
find /tmp -size +2M 大于2M
find /tmp -size -2M 小于2M```
8).文件权限
`-perm`

find /tmp -perm 755
find /tmp -perm +222 只要有一类用户匹配写权限就可以
find /tmp -perm -222 必须所有类别用户都满足写权限```
9)、-nouser and -nogroup
find / -nogroup -a -nouser查找既没有属主也没有属组的文件

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • http://blog.chinaunix.net/uid-24648486-id-2998767.html 前言...
    步履不停的Suunny阅读 693评论 0 0
  • find命令是用于实现精确查找,实时查找指定目录下面的文件。在工作中常用。优点是:实时,精确。缺点是:比较占用系统...
    dxldeng阅读 758评论 0 1
  • Linux系统「文件查找」 Linux系统文件中常用属性为以下内容:名称,大小,权限,属主,属组,修改时间,访问时...
    魏镇坪阅读 7,957评论 0 3
  • find在不指定查找目录的情况下是对整个系统进行遍历查找 使用格式:find[指定查找目录][查找规则][查找完后...
    含辞未吐气若幽兰阅读 366评论 0 0
  • find一些常用参数的一些常用实例和一些具体用法和注意事项。 1.使用name选项: 文件名选项是find命令最常...
    架构飞毛腿阅读 359评论 0 0