public
我的 Rails 项目目录中有一个文件夹。有时服务器会将文件下载到此文件夹中。我希望服务器每小时清除一次这个文件夹(删除所有文件)。可以在 Rails 中进行吗?
问问题
64 次
2 回答
0
编写一个 CRON 选项卡并每小时执行一次。就像是
0 * * * * find /path/to/rails/public -name "*.txt" -mtime +1 | xargs rm -fr
当然,替换*.txt
为与您的文件匹配的模式。
编辑:@JoeFrambach 有管道问题find
,xargs
但他没有详细说明为什么或提供替代解决方案。如果您不想使用管道,您可以使用以下-exec
开关find
:
find /path/to/rails/public -name "*.txt" -mtime +1 -exec rm {} \;
最终应该是一样的。
于 2013-06-10T19:43:33.007 回答
0
不是直接在rails中,但肯定有一点红宝石。您可以通过编写一个 cron 任务来设置定期作业(或者如果您不喜欢 cron,可以使用 when gem 将其保存在 ruby 中)。
您可以使用任何时候直接执行 shell 命令,或者编写一个 rake 任务并执行它。
于 2013-06-10T19:45:02.823 回答