我有一个ruby cgi脚本,它调用一个shell脚本。shell脚本不能正确执行从ruby CGI脚本
shell脚本会执行git pull。
当我从命令提示符运行shell脚本它的作品。
但是,当我从ruby cgi脚本运行它时,它会执行脚本,但git pull不会发生。
我猜它可能与权限相关,但我无法完全解决如何解决它。
红宝石脚本是:
#!/usr/local/rvm/rubies/ruby-1.9.3-p125/bin/ruby
require "cgi"
git_pull = `sh /github/do_git_pull.sh`
move_apanels = `sh /github/move_apanels.sh`
puts "Content-type: text/html\n\n"
puts "<html><body>We've done the following:<ul>"
puts "<li>#{git_pull.to_s}</li>"
puts "<li>#{move_apanels.to_s}</li>"
puts "</ul></body></html>"
,而shell脚本是:
#!/bin/bash
sudo sh -c cd /github
sudo sh -c git pull origin master
echo "Git Pull Completed"
两个文件都搭配chmod 777
任何想法?