zoukankan      html  css  js  c++  java
  • find命令使用详解

    一、主要内容

    ======================================

    1. 用文件名查找文件

    2.用文件名查找文件,忽略大小写

    3. 使用mindepth和maxdepth限定搜索指定目录的深度

    4. 在find命令查找到的文件上执行命令

    5. 相反匹配

    6. 使用inode编号查找文件

    7. 根据文件权限查找文件

    8. 找到home目录及子目录下所有的空文件(0字节文件)

    9. 查找5个最大的文件

    10. 查找5个最小的文件

    11. 使用-type查找指定文件类型的文件

    12. 通过和其他文件比较修改时间查找文件

    13. 通过文件大小查找文件

    14. 给常用find操作取别名

    15. 用find命令删除大型打包文件

    16.找到在1个小时内被更改的文件

    17.找到1个小时内被访问过的文件

    18.查找一个小时内状态被改变的文件

    19.搜索仅仅限定于文件,不显示文件夹

    20.仅仅查找非隐藏的文件(不显示隐藏文件)

    21.查找文件修改时间在某一文件修改后的文件

    22.查找文件访问时间在某一文件的修改时间之后的文件

    23.查找状态改变时间在某个文件修改时间之后的文件:

    24.在find命令输出上使用 ls -l,列举出1小时内被编辑过的文件的详细信息

    25.仅仅在当前文件系统中搜索

    26.在同一个命令中使用多个{}

    27. 使用多个{}实例

    28.将错误重定向到/dev/nul

    29.将文件名中的空格换成下划线

    30.在find结果中同时执行两条命令

    31、常用指令

    ======================================

    二、find命令实用实例总结

    ======================================

    一、基于name查询文件

    # find . -name tecmint.txt

    # find /home -name tecmint.txt

    # find /home -iname tecmint.txt

    # find / -type d -name Tecmint

    # find . -type f -name tecmint.php

    # find . -type f -name "*.php"

    二、基于权限查询文件

    # find . -type f -perm 0777 -print

    # find / -type f ! -perm 777

    # find / -perm 2644

    # find / -perm 1551

    # find / -perm /u=s

    # find / -perm /g+s

    # find / -perm /u=r

    # find / -perm /a=x

    # find / -type f -perm 0777 -print -exec chmod 644 {};

    # find / -type d -perm 777 -print -exec chmod 755 {};

    # find . -type f -name "tecmint.txt" -execrm -f {} ;

    # find . -type f -name "*.txt" -exec rm -f{} ;

    # find . -type f -name "*.mp3" -exec rm -f{} ;

    # find /tmp -type f -empty

    # find /tmp -type d -empty

    # find /tmp -type f -name ".*"

    三、基于用户和组查询文件

    # find / -user root -name tecmint.txt

    # find /home -user tecmint

    # find /home -group developer

    # find /home -user tecmint -iname "*.txt"

    四、基于时间查询文件或目录

    # find / -mtime 50         它代表着最近一次文件内容被修改的时间。可用ls -l 命令查看

    # find / -atime 50          

    1.   将分区mount的挂载的时候指定采用非relatime方式
    2.   atime小于ctime或者小于mtime的时候
    3.   本次的access time和上次的atime超过24个小时

    #find / ctime 50              它代表着最近一次文件状态改变的时间 ,是status change time,是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改,即文件状态最后一次被改变的时间。可用ls -lc 命令查看。

    # find / -mtime +50 –mtime -100

    # find / -cmin -60

    # find / -mmin -60

    # find / -amin -60

    五、基于大小查询文件或目录

    # find / -size 50M

    # find / -size +50M -size -100M

    # find / -size +100M -exec rm -rf {} ;

    # find / -type f -name *.mp3 -size +10M -exec rm {} ;

    ========================================

  • 相关阅读:
    python 创建文件夹
    Python利用pandas处理Excel数据的应用
    解决git rebase操作后推送远端分支不成功的问题
    LeetCode 1 两数之和
    LeetCode 70 爬楼梯
    LeetCode 11 盛水最多的容器
    LeetCode 283 移动零
    数据结构与算法 ---- 数组 -- Array
    跳表???
    自顶向下编程
  • 原文地址:https://www.cnblogs.com/zhou2019/p/11080973.html
Copyright © 2011-2022 走看看