2012-01-11 17 views
5

Mam wykonywalny Ruby (jest to binstub Bundler), który zaczyna się odJak odwołać się do lokalnego ruby ​​w pliku wykonywalnym hash-bang?

#!/usr/bin/env ruby 

na moim serwerze Mam Ruby 193 zainstalowane przez RVM.

$ which ruby 
-> /home/dtuite/.rvm/rubies/ruby-1.9.3-p0/bin/ruby 

na moim komputerze lokalnym, ja też mam Ruby zainstalowany przez RVM, ale w innym miejscu (oczywiście!)

$ which ruby 
-> /Users/davidtuite/.rvm/rubies/ruby-1.9.3-p0/bin/ruby 

Kiedy próbuję uruchomić ten plik wykonywalny na serwerze pojawia się błąd

/usr/bin/env: ruby: No such file or directory 

Czy istnieje sposób mogę odwołać lokalnie dostępne rubin w hash-bang tak, że ten sam skrypt wykona zarówno na serwerze i komputerze lokalnym?

+0

Czy uruchamiasz skrypt pod tym samym kontem użytkownika lub z sudo lub innymi? – d11wtq

+0

To samo konto użytkownika –

+1

Co dzieje się po wpisaniu w wierszu polecenia '/ usr/bin/env ruby ​​-v'? – d11wtq

Odpowiedz

3

Wypróbuj rvm-auto-ruby - wyjaśniono to w nieco innym kontekście w RVM's Textmate documentation.

+0

Tak, to zrobiłem. Dzięki. –

+0

Przepraszam, że musiałem to odrzucić, ponieważ to, co działa wczoraj, nie działa dzisiaj. [nowe pytanie] (http://stackoverflow.com/questions/8840742/cant-start-service-with-sudo-since-root-user-has-no-access-to-ruby) –

+0

Ok. Postanowiłem ponownie zaakceptować tę odpowiedź, ponieważ zasadniczo odpowiada na pytanie, które zadałem. Fakt, że zadałem niewłaściwe pytanie, nie jest uzasadnionym powodem do nieakceptowania. –

Powiązane problemy