zoukankan      html  css  js  c++  java
  • find命令总结

    一、命令简介:

      find顾名思义就是查找文件的意思,能在系统中寻找你想要的文件。日常使用Linux系统中可能会经常用到这个命令,非常实用,掌握这个命令的用法会使你的工作更加效率

    二、主要语法:

      find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]

    参数说明
    -name 按名称查找
    -size 按大小查找
    -user 按文件属主查找
    -type 按类型查找
    -mtime 按照文件的更改时间查找
    -atime 按照文件的访问时间查找
    -perm 按照文件权限查找
    -regex 按照正则表达查找
    • 一般情况下使用-name选项匹配字符串即可,复杂一点的可以使用正则表达式-regex选项
    • 这里只列举比较常用的选项,具体的其他选项参数可以使用info find 或 man find命令进行查询

    三、操作实例:

    查找根目录下.c后缀的所有并打印出来

    [root@localhost ~]# find / -type f -name "*.c" -print

    查找/etc/目录下大于2M的所有文件

    find /etc -size +2M

    搜索当前目录下七天内被访问过的所有文件

    find . -type f -atime -7

    找出/var/log下不是以.log结尾的文件

    find /var/log/ -type f ! -name '*.log'

    找出所有以.py和.sh为后缀的所有文件

    find / -regex ".*(.py|.sh)$"

    关于-print0 与 xargs -0的原理和用法:

    find -print0表示在find的每一个结果之后加一个NULL字符,而不是默认加一个换行符。find的默认在每一个结果后加一个' ',所以输出结果是一行一行的。当使用了-print0之后,就变成一行了

    然后xargs -0表示xargs用NULL来作为分隔符。这样前后搭配就不会出现空格和换行符的错误了。选择NULL做分隔符,是因为一般编程语言把NULL作为字符串结束的标志,所以文件名不可能以NULL结尾,这样确保万无一失。

    推荐用法:

    find / -name "*.txt" -print0 | xargs -0 rm
  • 相关阅读:
    SQL Server 2019安装及部署指南
    西门子1200PLC实用定位控制程序案例
    C#进行注册表项和键值操作
    上位机开发必备的一个实体类
    配置Internal Load balancer中VM的外网访问
    从中序后序遍历构造
    网络 | Linux ping任何ip均出现 Destination Host Unreachable 排查思路与方法
    Spring、Spring Framework、Spring Boot、Spring Cloud的区别
    Linux软件安装目录分类讲解
    APP嵌入H5时,软键盘处理(IOS)
  • 原文地址:https://www.cnblogs.com/ashjo009/p/12199352.html
Copyright © 2011-2022 走看看