zoukankan      html  css  js  c++  java
  • linux delete files older than 3 days

    4 down vote accepted

    This is easy enough (although note that this goes by a modification time more than 3 days ago since a creation time is only available on certain filesystems with special tools):

    find /a/b/c/1 /a/b/c/2 -type f -mtime +3 #-delete

    Remove the # before the -delete once you are sure that it is finding the files you want to remove.

    To have it run by cron, I would probably just create an executable script (add a shebang - #!bin/sh to the top line of the file and make executable with chmod a+x), then put it in an appropriate cron directory like /etc/cron.daily or /etc/cron.weekly. Provided of course that you do not need a more specific schedule and that these directories exist on your distro.

    Update

    As noted below, the -delete option for find isn't very portable. A POSIX compatible approach would be:

    find /a/b/c/1 /a/b/c/2 -type f -mtime +3 #-exec rm {} +

    Again remove the # when you are sure you have the right files.

    Update2

    To quote from Stéphane Chazelas comment below:

    Note that -exec rm {} + has race condition vulnerabilities which -delete (where available) doesn't have. So don't use it on directories that are writeable by others. Some finds also have a -execdir that mitigates against those vulnerabilities.

    link:http://unix.stackexchange.com/questions/136804/cron-job-to-delete-files-older-than-3-days

  • 相关阅读:
    javascript实现限制上传文件的大小
    js事件
    表格展开伸缩以及ztree异步加载
    二分法
    php操作beanstalkd
    ubuntu安装操作HttpSQS高速队列
    mysql中安全函数
    php操作httpsqs
    jquery操作表单
    ajax长轮询实例
  • 原文地址:https://www.cnblogs.com/rosepotato/p/4076584.html
Copyright © 2011-2022 走看看