【发布时间】:2015-02-17 16:35:20
【问题描述】:
因此,我查看了此处有关删除超过 14 天的目录的每个脚本。我编写的脚本适用于文件,但由于某种原因它没有删除目录。所以这是我的脚本。
#!/bin/bash
find /TBD/* -mtim +1 | xargs rm -rf
所以这段代码成功地删除了 TBD 中的文件,但它留下了两个目录。我检查了它们的时间戳,根据时间戳,它们距上次修改至少 2 天。特别是 12 月 16 日 16:10 所以我无法弄清楚。我的 crontab 我每分钟运行一次并记录它,它只在日志中显示。
+ /scripts/deletebackups.sh: :2:BASH_XTRACEFD=3xargs rm -rf
+ /scripts/deletebackups.sh: :2: BASH_XTRACEFD=3find /TBD/contents TBD/contents -mtime +1
我使用了内容,因为内容实际上是我们 pxe 服务器中的人名。我检查了这两个目录内的每个文件和文件夹,它们的时间戳与父目录应该是一样的,但它仍然没有被删除。
这可能是权限问题吗?我使用 sudo nano deletebackups.sh 编写了脚本 当我在最左边的 TBD 下键入 ls 时,它显示 drwxr-xr-x 3 hscadministrator root 4096 DEC 16 16:10 用于两个不会删除的目录。 我不太熟悉所有这些字母的含义。
我已经尝试过的这段代码的其他迭代是
find /TBD/* -mtime +1 rm -r {} \;
【问题讨论】:
标签: linux bash directory crontab rm