如何自动化脚本[Ruby]每天在给定时间运行?

时间:2015-06-26 23:36:58

标签: ruby linux scripting

我写了一个webcrawler,它将信息提取到报告中,并希望每天中午12点运行它。该脚本使用以下命令运行:

ruby script.rb 

我尝试过使用when gem(https://github.com/javan/whenever) 我的目录结构是:

/config
  schedule.rb
script.rb

在我的script.rb文件中,我有以下内容:

every :day, :at => '12:00pm' do 
    command "ruby script.rb"
end 

我已经修改了时间:at看看它是否运行但是没有。

我也试过了:

every :day, :at => '12:00pm' do 
    `ruby script.rb`
end 

我也查看了“at”linux实用程序,但它似乎适合一次性工作。我希望每天都能生成一份报告。

注意:脚本指定输出的位置,因此我不需要给它输出。

我也尝试过创建一个crontab但遇到了保存问题。

我使用http://crontab-generator.org/生成正确的语法。 然后我跑:

crontab -e 

打开vi并复制语法。但是,它退出时状态为1,如果我运行:

crontab -l

它说没有列出任何工作。

我也尝试以超级用户身份运行它,并且它也会退出。

错误消息是

/usr/bin/vi" exited with status 1

我只想在给定时间运行一个命令,我缺少什么?

修改 我在Mac上是否重要?

0 个答案:

没有答案