Linux下定时删除过期文件的方法

  在管理Linux下的文件时,我们通常会有定时删除过期文件的这个需求。比如定时删除超过指定时间的日志文件,不然时长越久,你的日志文件占用的空间就越大,那离爆磁盘不远了,还有也解决网站方便的需求,比如我们建立的淘宝客api的程序,为了提高商品页的访问速度,我们需要进行关键数据的缓存,也需要定时删除过期的缓存文件,如果是使用PHP程序扫描删除,那将得不偿失。那么如何在Linux下定时删除过期文件?这里小编简单介绍下,方便需要的朋友。

  在linux下删除过期文件,很简单,用如下命令:

  复制代码代码如下:

  find /var/www/ -type f -mtime +30 -exec rm -f '{} ;'

  以上命令删除30天以前的过期文件。

  命令说明:

  /var/www/是查找文件的路径。

  -type f是指定文件类型为普通文件。

  -mtime +30是指修改时间距离现在30天的文件。

  -exec rm -f指执行删除匹配出来的文件并且不提示,有的系统需要带单引号,有的不需要。

  将以上命令,添加到crontab中,即可实现定期删除了。

  比如,每天的1点30分钟实现删除,可以这样:

  复制代码代码如下:

  #crontab -e

  30 1 * * * find /var/www/ -type f -mtime +30 -exec rm -f '{} ;'

时间: 2024-11-01 12:16:49

Linux下定时删除过期文件的方法的相关文章

Linux下的删除过期文件操作

        在实际的软件开发项目中,经常会有实现删除过期文件的需求.即要求程序能够自动删除多长时间之前生成的文件.本文提供了一个示例代码,为相关的开发工作提供了参考.         程序如下(本程序用makefile进行编译): /*********************************************************************** 版权所有 (C)2014, Zhou Zhaoxiong.* * 文件名称: TestFileDelete.c* 内容

Linux下两种删除过期文件的方法详述

一.概述 在实际的C软件开发项目中,不同的软件会在不同的目录中生成文件,由于磁盘的存储空间有限,开发人员不得不考虑对目录下的过期文件进行删除.一般说来,有两种删除过期文件的方法,一种是在C程序中实现,一种是利用crontab实现.本文对这两种方法的具体实现进行详细的介绍. 为了便于说明,本文中的过期文件的后缀为.c,存放在/home/zhou/zhouzx/Test目录下,过期时间为1天. 二.在C程序中实现过期文件删除 在该方法中,我们要考虑的主要问题为: (1)要删除过期多久的文件?文件存放

python删除过期文件的方法

  本文实例讲述了python删除过期文件的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 # remove all jpeg image files of an expired modification date = mtime # you could also use creation date (ctime) or last access

Windows和Linux下定时删除某天前的文件的脚本_DOS/BAT

以前做到最多的定时我们就是定时备份功能了,我们常用利用定时功能来备份网站数据或备份数据库了,下面我来给(www.jb51.net)大家介绍几个Linux与Windows中定时删除某天前的文件方法,这个与备份有点区别,但大同小义了. Windows下bat文件内容如下: 复制代码 代码如下: @echo off forfiles -p "D:\servers\apache2.2\logs" -s -m *.log -d -15 -c "cmd /c del @path"

Linux下命令删除乱码文件

当文件名为乱码的时候,无法通过键盘输入文件名,所以在终端下就不能直接利用rm,mv等命令管理文件了. 但是每个文件都有一个i节点号,可以通过i节点号来管理文件.首先,要取得文件的i节点号.这个可以通过ls命令的-i选项获得得. -bash-3.00$ ls -i 41697812 a 32983551 di 32983554 ethnet.c 32983543 hard_link 32983542 de.c 32983544 ethnet 32983541 ethnet.h 32983543 k

Linux下Oracle删除用户和表空间的方法_oracle

本文实例讲述了Linux下Oracle删除用户和表空间的方法.分享给大家供大家参考,具体如下: 1.删除某个用户 SQL> conn /as sysdba Connected. SQL> drop user userName cascade; 用户已删除 如果用户无法删除,并报错: ERROR at line 1: ORA-01940: cannot drop a user that is currently connected 通过查看用户的进行,并kill用户进程,然后删除用户. SQL&

Linux下Patch的应用和制作方法介绍

Linux下Patch的应用和制作方法介绍 因为在u-boot移植过程中,有几处通用文件要修改,如果每次都要手动修改就太麻烦了.制作补丁可以解决这个问题. 学习资料的收集比较简单,方法一类似于这种初级问题网上资料非常丰富,google或者baidu搜索一下,然后选择有价值的资料,方法二是阅读man在线文档.完成收集工作,当然最终要在自己的Linux上作实验,比较总结,消化吸收为自己的东西.要除去这么一种错误思想:一定要学全.要知道,一次学全是不可能的,只能先学习最为常用的,在以后不断实践的过程中

Linux下读取默认MAC地址的方法

  Linux下读取默认MAC地址的方法           MAC(Media Access Control,介质访问控制)计算机通过它来定义并识别网络设备的位置.在嵌入式linux学习中不可避免也会遇到MAC,本文主要描述了如何通过操作OTP来读取嵌入式linux设备网卡中的MAC地址 一.适用范围 这里主要介绍读取网卡MAC地址的方法,适用于EasyARM-i.MX287A开发套件,其应用原理及配套示例也适用于下表1.1所列出的产品型号. 二.原理介绍 MAC(Media Access C

C#读取目录下所有指定类型文件的方法

  本文实例讲述了C#读取目录下所有指定类型文件的方法.分享给大家供大家参考.具体分析如下: 首先要引入命名空间:using System.IO; 再写读取方法: ? 1 2 3 4 5 6 7 8 9 10 DirectoryInfo dir = new DirectoryInfo(path); //path为某个目录,如: "D:Program Files" FileInfo[] inf = dir.GetFiles(); foreach (FileInfo finf in inf