find 命令:

文件查找:
locate:
    非实时,模糊匹配,查找是根据全系统文件数据库进行的;
# updatedb, 手动生成文件数据库
速度快

find:
    实时
    精确
    支持众多查找标准
    遍历指定目录中的所有文件完成查找,速度慢;
    
find 查找路径 查找标准 查找到以后的处理运作
查找路径:默认为当前目录
查找标准:默认为指定路径下的所有文件
处理运作:默认为显示

匹配标准:
    -name 'FILENAME':对文件名作精确匹配
        文件名通配:
            *:任意长度的任意字符
            ?:0个或1个
            []
    -iname 'FILENAME': 文件名匹配时不区分大小写
    -regex PATTERN:基于正则表达式进行文件名匹配
    
    -user USERNAME: 根据属主查找
    -group GROUPNAME: 根据属组查找
    
    -uid UID: 根据UID查找
    -gid GID: 根据GID查找
    
    -nouser:查找没有属主的文件
    -nogroup: 查找没有属组的文件
    
    -type   类型
        f: 普通文件
        d:目录
        c:字符
        b:块文件
        l:连接文件
        p:管道文件
        s:套接字文件
    大小
    -size [+|-]
        #k
        #M
        #G
        
组合条件:
    -a  都满足
    -o  或
    -not 非
    
/tmp目录,不是目录,并且还不能套接字类型的文件
/tmp/test目录下,属主不是user1,也不是user2的文件;

-mtime  最近一次修改时间
    -ctime  改变时间
    -atime  访问时间    单位是天
        [+|-]#  +5至少五天未访问过   -5最近五天访问过的
    -mmin
    -cmin
    -amin    单位分钟
        [+|-]#
        
    -perm  MODE:精确匹配          根据权限查找
          /MODE: 任意一位匹配即满足条件
          -MODE: 文件权限能完全包含此MODE时才符合条件
        
        -644
        644: rw-r--r--
        755: rwxr-xr-x
        750: rwxr-x---
    find ./ -perm -001

运作:
    -print: 显示
    -ls:类似ls -l的形式显示每一个文件的详细
    -ok COMMAND {} \; 每一次操作都需要用户确认
    -exec COMMAND {} \;
    
1、查找/var目录下属主为root并且属组为mail的所有文件;
find /var -user root -group mail

2、查找/usr目录下不属于root,bin,或student的文件;
find /usr -not -user root -a -not -user bin -a -not -user student
find /usr -not \( -user root -o -user bin -o -user student \)

3、查找/etc目录下最近一周内内容修改过且不属于root及student用户的文件;
find /etc -mtime -7 -not \ ( -user root -o -user student \)
find /etc -mtime -7 -not -user root -a -not -user student

4、查找当前系统上没有属主或属组且最近1天内曾被访问过的文件,并将其属主属组均修改为root;
find / \( -nouser -o -nogroup \) -a -atime -1 -exec chown root:root {} \;

5、查找/etc目录下大于1M的文件,并将其文件名写入/tmp/etc.largefiles文件中;
find /etc -size +1M >> /tmp/etc.largefiles

6、查找/etc目录下所有用户都没有写权限的文件,显示出其详细信息;
find /etc -not -perm /222 -ls

find命令笔记的更多相关文章

  1. Linux 常用命令笔记

    Linux 常用命令笔记 1. locate locate:用来定位文件的位置,如:locate a.txt 但是这个命令有延迟,也就是新建的文件不一定能搜索到,如果非要找到新建的文件可以使用 upd ...

  2. Linux常用命令 笔记

     Linux常用命令  笔记 一.文件处理命令 1. ls命令:显示目录文件                          -a 显示所有文件,包括隐藏文件.(all)               ...

  3. 《linux就该这么学》第三节课 第二节命令笔记

    命令笔记 (随笔原创,借鉴请修改) linux系统中一切都是文件 2.4  系统状态的命令:  ifconfig   :    查看系统网卡信息,包括网卡名称,ip地址,掩码,mac地址,收到数据包大 ...

  4. Linux常用命令笔记一

    笔记1:查看ubuntu是32位还是64位的方法及其版本号 查看ubuntu是64还是32的命令如下: uname -m 如果是i386到i686,那就是32位系统:如果是x86_64 ,那就是64系 ...

  5. Linux/Unix mac 命令笔记

    bg和fg Linux/Unix 区别于微软平台最大的优点就是真正的多用户,多任务.因此在任务管理上也有别具特色的管理思想.我们知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行 ...

  6. linux 文件类命令笔记

    看一下linux的教程,不错,由于只看鸟哥有点空洞,于就是找了个视频教程,边看边学 对比了几个教程,http://edu.51cto.com/course/course_id-32.html这个教程相 ...

  7. 常用Linux命令笔记

    任何脱离业务的架构都是耍流氓 只记录实际常用的Linux命令 常用Linux命令 查找安装路径: whereis nginx 查询nginx进程: ps aux|grep nginx 查看 CentO ...

  8. Docker Swarm 日常运维命令笔记

    之前介绍了Docker管理工具-Swarm部署记录,这里简单总结下Docker Swarm的日常维护命令,以作为平时运维笔记. Swarm作为一个管理Docker集群的工具,首先需要将其部署起来,可以 ...

  9. Mongo db 简单介绍及命令笔记

    首先来了解下什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为W ...

  10. ansible 安装 使用 命令 笔记 生成密钥 管控机 被管控机 wget epel源

      ansible 与salt对比 相同 都是为了同时在多台机器上执行相同的命令 都是python开发 不同 agent(saltstack需要安装.ansible不需要) 配置(salt配置麻烦,a ...

随机推荐

  1. poj 3262 Protecting the Flowers 贪心

    题意:给定n个奶牛,FJ把奶牛i从其位置送回牛棚并回到草坪要花费2*t[i]时间,同时留在草地上的奶牛j每分钟会消耗d[j]个草 求把所有奶牛送回牛棚内,所消耗草的最小值 思路:贪心,假设奶牛a和奶牛 ...

  2. thinkphp 一些常用写法

    多表查询:

  3. thinkphp实现excel数据的导入导出

    下载地址:phpexcel.rar 实现步骤: 一:在http://phpexcel.codeplex.com/下载最新PHPExcel放到Vendor下,注意位置:ThinkPHP\Extend\V ...

  4. Thinkphp多表联查mysql写法

    $model=M("user","","mysql://root:222222@localhost:3306/jiaoyou"); //换数 ...

  5. JavaScript 基础一

    内部: <Script Language="JavaScript" type="text/javascript"> JavaScript代码 < ...

  6. 黑马程序猿 IO流 ByteArrayInputStream与ByteArrayOutputStream

    ---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- package cn.itcast.IO; i ...

  7. ECMAScript 6新特性介绍

    箭头函数 箭头函数使用=>语法来简化函数.在语句结构上和C#.Java 8 和 CoffeeScript相似,支持表达式和函数体. . =>`操作符左边为输入的參数.而右边则是进行的操作以 ...

  8. IOS基于新浪微博开放平台微博APP

    1.基于新浪微博开放平台APP源码 2.gitHub源代码下载地址 https://github.com/whzhaochao/SinaWeiBoOpen 3.用到的第三放开源库 3.1  RTLab ...

  9. Redis 安装教程 (Windows 2.6.13 稳定版)

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  10. jquery模仿css3延迟效果

    HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta ...