博客
关于我
Linux[find命令]-根据路径和条件搜索指定文件并删除
阅读量:791 次
发布时间:2023-02-02

本文共 1593 字,大约阅读时间需要 5 分钟。

find命令简介

find命令是Linux系统中一个强大的文件管理工具,用于根据路径和条件查找特定文件或目录。尽管其参数灵活且支持正则表达式,但建议避免在大型服务器上执行全盘搜索,以免造成系统性能下降。

常用 options参数搜索

按文件名搜索

  • -name:按文件名搜索,区分大小写,适用于精确匹配。

    find /usr/local/temp2/ -name test.log

    找到文件:/usr/local/temp2/test.log

  • -iname:按文件名搜索,不区分大小写,适用于不关心大小写的查找。

    find ./ -iname test.log

    找到文件:./test.log, ./Test.log

  • -inum:按文件inode号搜索,适用于已知文件inode号的特定查找。

    find ./ -inum 169322632

    找到文件:./test.log


按文件类型搜索

  • -type d:查找目录。

    find /usr/local/temp2/ -type d

    找到目录:/usr/local/temp2/2023-10-09/usr/local/temp2/2023-10-10

  • -type f:查找普通文件。

    find /usr/local/temp2/ -type f

    找到文件:/usr/local/temp2/test.log/usr/local/temp2/Test.log

  • -type l:查找符号链接文件。

    (此示例中未提供符号链接文件)


基于目录深度搜索

  • -maxdepth LEVELS:限制搜索深度。

    find /usr/local/temp2/ -maxdepth 1 -type d

    仅查找当前目录及一层子目录下的目录。

  • -mindepth LEVELS:忽略指定深度以下的文件或目录。

    find /usr/local/temp2/ -mindepth 1 -type f

    排除当前目录及一层子目录外的文件。


按修改时间搜索

  • -atime[±]时间:按文件访问时间查找,记录文件最后一次被访问的时间。

    例如,查找6天前的文件:

    find /usr/local/temp2 -mtime +5
  • -mtime[±]时间:按文件数据修改时间查找,更新文件内容会重置这些时间。

    例如,查找5~6天那一天修改的文件:

    find /usr/local/temp2 -mtime 5
  • -ctime[±]时间:按文件状态修改时间查找,修改文件属性或内容时更新。


按文件大小搜索

  • -size[±]大小:按照文件大小筛选文件。

    例如,查找小于2MB的文件:

    find /usr/local/temp2 -size -2M

    找到文件:/usr/local/temp2/test.log, /usr/local/temp2/Test.log


其他选项

-print选项

将找到的文件输出到标准输出:

find /usr/local/temp2 -maxdepth 1 -type f -mtime -5 -print

-exec选项

将找到的文件或目录提交给外部命令处理:

find /usr/local/temp2 -maxdepth 1 -type f -mtime -5 -exec rm -rf {} \;

注意:{}表示查找到的文件,;结束命令。


-ok选项

-exec类似,但在处理前会提示用户确认:

find /usr/local/temp2 -mindepth 2 -type d -mtime -5 -ok rm -rf {} \;

用户输入y后才执行命令:

[root@centos7 temp2]# find /usr/local/temp2 -mindepth 2 -type d -mtime -5 -ok rm -rf {} \; y

转载地址:http://zkzfk.baihongyu.com/

你可能感兴趣的文章
Linux下mysql常用操作命令
查看>>
linux下nc的使用
查看>>
Linux下php动态添加扩展
查看>>
Linux下protobuf和 protobuf-c安装使用
查看>>
Linux下ps -ef和ps aux的区别及格式详解
查看>>
linux下pthread_cancel无法取消线程的原因【转】
查看>>
Linux下putenv()函数导致composer更新失败
查看>>
linux下python3安装pip_linux下安装python3和对应的pip环境教程详解
查看>>
linux下python找到自己编写的模块
查看>>
Linux下rar解压工具的安装使用
查看>>
Linux下Redis部署
查看>>
linux下rename用法--批量重命名
查看>>
Linux下Rootkit的另类检测
查看>>
Linux下samba服务搭建
查看>>
linux下sed命令用法
查看>>
linux下sort用法
查看>>
linux下subversion server安装手册
查看>>
linux下svn修改用户名和密码
查看>>
linux下svn命令使用大全
查看>>
Linux下tar bz gz等压缩包的压缩和解压【转自www.bitsCN.com】
查看>>