在 ubuntu 中自动删除几分钟前的文件的脚本

在 ubuntu 中自动删除几分钟前的文件的脚本

是否有一个 shell 脚本可以删除文件夹中超过 x 分钟的所有文件?

答案1

这应该可以做到,我已经用 测试过了*.txt,但你可以使用以下命令将其更改为所有文件*.*

#!/bin/bash
cd /usr/local/my_logs
find ./*.txt -type f -mmin +5 -exec rm {} \;

答案2

这将永远运行,删除每次迭代前三分钟以上修改的文件,然后等待一分钟再执行此操作:

while true
do
    find -type f -mmin +3 -delete
    sleep 60
done

-maxdepth 1如果您不想让它递归,可以添加。

答案3

我使用这样的脚本来删除超过 30 天的备份:

find "/backups/mysql/" -type f -mtime +30 -print0 | xargs -0 rm -f

基于此,我认为你可以做类似的事情:

find "/yourDir/" -type f -mmin +10 -print0 | xargs -0 rm -f

我认为这会让他们超过10分钟

相关内容