本文介绍了脚本成功在命令行但不执行作为一个cronjob的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经运行了取我的Twitter Ruby脚本bash脚本源。
I've a bash script that runs a ruby script that fetches my twitter feeds.
## /home/username/twittercron
#!/bin/bash
cd /home/username/twitter
ruby twitter.rb friends
它成功运行在命令行中。
It runs successfully in command line.
/home/username/twittercron
但是当我尝试运行它作为一个cronjob,它运行,但无法获取饲料。
But when I try to run it as a cronjob, it ran but wasn't able to fetch the feeds.
## crontab -e
*/15 * * * * * /home/username/twittercron
脚本已经搭配chmod + X。不知道为什么它是这样。任何想法?
The script has been chmod +x. Not sure why it's as such. Any ideas?
推荐答案
红宝石版本管理(RVM)是造成问题。我只好打电话给这样的cron中脚本。
Ruby Version Manager (rvm) was causing the problem. I had to call the script in cron like this.
*/15 * * * * bash -c 'source /home/username/.rvm/scripts/rvm && /usr/bin/env ruby /home/username/twitter/twitter.rb friends'
这篇关于脚本成功在命令行但不执行作为一个cronjob的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!