查找并删除文件夹(ubuntu 服务器)

Find & delete folder (ubuntu server)

我的 ubuntu 服务器中有一个备份系统,每天都会备份数据库并将其保存在以日期命名的文件夹中:$(date +%d%m%y) 但是在脚本上,当我尝试查找和删除上周的文件夹时,该命令找不到任何目录。

我正在尝试:find -name $(date +%d%m%y) -type d -mtime +7 -exec rm -r {}; 永远找不到目录。 Y 尝试将 -mtime 时间更改为 1 天或 2 天,但什么也没找到。

我认为你犯了一个小错误:

当您在 5 月 7 日备份时,您创建了一个名为 070515 的文件夹。当您在一周后搜索时,您查找了一个名为 140515 的文件夹,该文件夹在 7 天前被修改过。但是,这个文件夹是今天才创建的。

您可能不需要文件夹的名称,只需使用

find /backup/path -type d -mtime +7

查找所有早于 7 天的文件夹。

我怀疑您的 find 命令中至少有两个错误:

  1. 缺少搜索路径:find /where/to/search -name ...

  2. $(date +%d%m%y) 总是给出实际日期。具有实际日期的目录没有修改时间 +1 或 +7 看起来很合理。请尝试以下操作:

    find /where/to/search -type d -mtime +7