Mir ist klar, dass dies eine etwas alte Frage ist, aber ich habe einen Tag damit verbracht, dieses Problem zu lösen, und ich habe eine meiner Meinung nach solide Best-Practice-Lösung gefunden - verwenden Sie die rvm
Wrapper.
/usr/bin/env ruby
bietet Ihnen die Möglichkeit, die Ruby-Version Ihrer Wahl zu verwenden, sodass Sie die ausführbaren Shell-Skripte (in /bin
) nicht mit einem fest codierten Verzeichnispfad bearbeiten müssen , damit sie funktionieren (ich habe dies an anderer Stelle als Lösungsvorschlag angesehen).
Wie in den obigen Antworten erwähnt, ist der Schlüssel die $PATH
Einstellung /etc/environment
, aber ich habe eine andere Lösung gefunden.
RVM gibt uns ein symbolisches Linkverzeichnis aller installierten Ruby-Versionen und Aliase unter /usr/local/rvm/wrappers/
.
Wenn Sie Ihre $PATH
Variable so einstellen , dass sie das Wrapper-Verzeichnis verwendet, das der Ruby-Version zugeordnet ist, die Sie verwenden möchten, z
PATH="/usr/local/rvm/wrappers/ruby-1.9.3-p547:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
Sie haben die RVM-Umgebung so eingestellt, dass /usr/bin/env ruby_command
sie funktioniert.
Zumindest löste dies dieses Problem für mich. Ich hoffe, das hilft jemandem da draußen, etwas Zeit zu sparen.