【问题标题】:find directory older than 3 days and zip all files in it查找超过 3 天的目录并压缩其中的所有文件
【发布时间】:2017-03-27 16:29:09
【问题描述】:

我能找到超过 3 天的任何目录

然后压缩它们然后删除目录?

我有 2 个解决方案。

  1. 将所有目录压缩到工作目录下的 1 个 zip 中

    我试过了

    zip -rm ${WORKDIR}/date +%Y%m%d -d "${DAY_TO_ZIP} 天前".zipfind ${WORKDIR} -daystart -mtime +${DAY_TO_ZIP} -type d ! -name "*.zip"``

    此命令将压缩所有文件,包括非目录文件。

  2. 1个目录1个zip同一个目录的路径

非常感谢

【问题讨论】:

    标签: linux unix find zip


    【解决方案1】:

    执行以下命令查找所有超过 3 天的目录并压缩所有文件

            # find / -mtime +3 -type d -exec zip -r zipfile.zip {} +
    

    -mtime +3 表示您正在查找 3 天前修改过的文件。

    -mtime -3 表示少于 3 天。

    -mtime 3 如果跳过 + 或 - 则表示正好是 3 天。

    最后如果你删除所有目录然后执行下面的命令

           # find / -mtime +3 -type d -exec rm -f {} \;
    

    【讨论】:

      【解决方案2】:

      find ./ -mtime +x -print -exec gzip {} ;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-08-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-04
        • 1970-01-01
        • 2020-07-16
        • 1970-01-01
        相关资源
        最近更新 更多