Ruby on rails RAILS 6:如何在crontab中运行RAILS任务?

Ruby on rails RAILS 6:如何在crontab中运行RAILS任务?,ruby-on-rails,rvm,Ruby On Rails,Rvm,我想运行由cron启动的rails任务(crontab条目)。 但是我总是得到一个错误,rails命令找不到 /bin/sh: rails: No such file or directory 因此,我尝试的与.profile或.bashrs包含的内容相同: source "$HOME/.rvm/scripts/rvm" export PATH="$PATH:$HOME/.rvm/bin" 它不知道需要导出哪些变量,或者之前需要执行哪些程序/工具/子命

我想运行由cron启动的rails任务(crontab条目)。 但是我总是得到一个错误,rails命令找不到

/bin/sh: rails: No such file or directory
因此,我尝试的与.profile或.bashrs包含的内容相同:

source "$HOME/.rvm/scripts/rvm"
export PATH="$PATH:$HOME/.rvm/bin"
它不知道需要导出哪些变量,或者之前需要执行哪些程序/工具/子命令,按照什么顺序,先执行命令XYZ,然后导出GEM_uuuuuuuuuuuuu变量1 2 3,然后执行另一个子命令,然后通过命令ABC进行检查,但当刀具rvm list返回字符串不等于rvm_字符串_1时不进行检查。…

Hi您可以使用gem进行检查。请遵循以下步骤:

步骤1:将gem添加到您的gem文件中

# Gemfile

gem 'whenever', '~> 1.0'
步骤2:运行
bundle install
安装此gem

步骤3:运行
whenverize。
这将为您创建一个初始的
config/schedule.rb
文件(只要您的项目中已经存在config文件夹)

步骤4:打开新创建的
config/schedule.rb
并编写调度程序任务

# config/schedule.rb
# here `fetch_user_meetings:sync` this is one task in my case.
# please replace this with your task.

every :hour do
  rake "fetch_user_meetings:sync", output: {
    error: 'log/fetch_user_meetings_sync_error.log',
    standard: 'log/fetch_user_meetings_sync_access.log'
  }
end
步骤5:无论何时运行
。此命令将以实际的cron格式输出生成的计划的预览,并使用crontab附加作业。无论何时修改
config/scheduler.rb
,请运行此命令。这将更新您的cron作业

NB:有许多选项可用于设置计划程序作业。请跟我来

快乐编码:-)