删除大于指定日期的文件

删除大于30天的文件

  find /opt/backup -type f -mtime +30 -delete 

或者:

  find /opt/backup -type f -mtime +30 -exec rm -rf {} \;

删除大小为0的文件

find /opt/backup -size 0 -exec rm -i {} \;

-type f: 表示只找出文件,排除查找目录
-type d: 表示只找出目录
-mtime: 表示修改时间(modify time 简写为mtime)
\;: 表示对分号进行转义,-exec 命令后面可以跟很多的参数,那么就需要分号( 来表面参数的结束。比如find . -name "*.js" -exec ls -l {} \; -name "special.*" -exec cat {} \; 就需要分号来结束第一个exec的命令参数。

关于Linux底下三种时间的简单介绍:
1. atime:(access time)显示的是文件中的数据最后被访问的时间,比如系统的进程直接使用或通过一些命令和脚本间接使用。(执行一些可执行文件或脚本)  
2. mtime: (modify time)显示的是文件内容被修改的最后时间,比如用vi编辑时就会被改变。(也就是Block的内容)  
3. ctime: (change time)显示的是文件的权限、拥有者、所属的组、链接数发生改变时的时间。当然当内容改变时也会随之改变(即inode内容发生改变和Block内容发生改变时)

原文链接:点击这里

原文地址:https://www.cnblogs.com/gscvery/p/15647559.html