如何在Capistrano運行命令中設置shell以使用bash而不是sh? 我試圖安裝RVM,我需要執行命令:在如何將shell設置爲在Capistrano運行的bash?
run "bash < <(curl -L http://bit.ly/rvm-install-system-wide)"
:
task :install_rvm, :roles => :server do
apps = %w(bison openssl libreadline6 libreadline6-dev zlib1g zlib1g-dev libssl-dev libyaml-dev sqlite3 libsqlite3-0 libxml2-dev libxslt-dev autoconf subversion libcurl4-openssl-dev)
apt.install({:base => apps}, :stable)
run "bash < <(curl -L http://bit.ly/rvm-install-system-wide)"
run "rvm install 1.9.2".sh
run "rvm use [email protected]"
run "gem install awesome_print map_by_method wirble bundler builder pg cheat"
run "gem install -v2.1.2 builder"
# modify .bashrc
end
但我似乎無法得到它,因爲Capistrano的是執行工作:
"sh -c 'bash < <(curl -L http://bit.ly/rvm-install-system-wide)'" on [email protected]
我在Capistrano的寶石看到command.rb文件有像
一些代碼但我不清楚如何通過options[:shell]
的任務
它看起來像通過'sh -c'bash執行'bash''''。這不符合你的要求? (免責聲明:我對Capistrano一無所知。) –