#!/bin/bash
#!/usr/bin/env ruby
cd /var/www/project
if [ ! -f tmp/pids/delayed_job.pid ]; then
echo "File not found!"
pwd
./bin/delayed_job start
echo "Run script successful!"
fi
在我的代码中,启动通常是工作,但使用crontab运行不起作用。
任何想法请。
答案 0 :(得分:0)
它解决了。
我使用rbenv进行ruby安装并将其设置为.bash_profile。是环境工作,但我在crontab中运行ruby不起作用。
解决方案:我将.bash_profile中的一些配置复制到我的脚本中,见下文
#!/bin/sh
#below script from .bash_profile
PATH=$PATH:$HOME/bin
export PATH
export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"
export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"
#end script from .bash_profile
RAILS_HOME="/var/www/{project}"
if [ ! -f $RAILS_HOME/tmp/pids/delayed_job.pid ]; then
echo "Starting Delayed job"
$RAILS_HOME/bin/delayed_job start
fi