我想知道我应该在 Cron 中插入什么作业,以便每个 文件夹 超过 30 分钟的会被删除。
我试过了:
# 30 * * * * find /path/to/my/folder -type f -mmin +30 -exec rm -fr -maxdepth 0 {} \;
但它似乎没有做任何事情。
Stackoverflow 上还有其他帖子,但他们都在谈论删除 文件 ,这很酷,但我也想删除文件夹本身及其内容。
最佳答案
我实际上发现最好的方法是将 Cron 中的命令分成两部分,并使用 -delete
争论
Code
30 * * * * sudo find /my/folder/* -type f -mmin +30 -delete && sudo find /my/folder/* -type d -empty -mmin +30 -delete
Explanations
30 * * * *
: 一直每 30mn 执行一次sudo find /my/folder/* -type f -mmin +45 -delete
: 删除所有超过 45 分钟的文件和子文件&&
:仅当第一个命令成功运行时才执行sudo find /my/folder/* -type d -empty -mmin +45 -delete
:删除所有超过 45 分钟的空文件夹在 Ubuntu 16.04 上工作
关于shell - 使用 Cron 删除超过 30 分钟的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48348769/