Как изменить версию Ruby с помощью RVM?
Я не могу переключить текущую версию Ruby:
➜ ~ rvm list
rvm rubies
ruby-1.9.2-p290 [ x86_64 ]
ruby-1.9.3-p0 [ x86_64 ]
➜ ~ rvm use ruby-1.9.3-p0
RVM is not a function, selecting rubies with 'rvm use ...' will not work.
13 ответов
исправил. Мне нужно было добавить:--3-->
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM
to .zshrc
Это случилось и со мной. У меня было:
export PATH=~/.rvm/bin:$PATH
добавил в моих .bashrc следующее.
все, что мне нужно было сделать, это добавить еще один
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
в тот же файл и он работал! Конечно, после этого вам придется перезагрузить терминал.
ваша оболочка не знает о функции RVM. После того, как вы установите его, он расскажет вам, как позаботиться об этом. Или идите в установить страница на сайте RVM и проверить раздел под названием " 2. Загрузите RVM в сеансы оболочки как функцию"
запустите это один раз, чтобы добавить строку, которая загружает rvm в ваш ~/.файл:
$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
или вручную добавьте его самостоятельно. (Обратите внимание, что в некоторых системах вы захотите поместить его в другие места, например на моем система, Mac OSX Lion, я вставил ее в~/.профиль)
(Kubuntu 11.10)~/.bash_profile
теперь называется ~/.profile
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.profile
source ~/.profile
rvm info # And now the fields display
чтобы изменить версию ruby по умолчанию:
В Ubuntu 11.10
пожалуйста, измените настройки терминала GNOME:
на терминал а затем следуйте следующим инструкциям:
1. Edit > Profile Preferences
2. Open Title and Command Tab
3. Check Run Command as a login Shell
4. Restart terminal
выполните эту команду на терминале:
rvm --default use ruby_Version
чтобы добавить все функции RVM к вашему .файл, вы должны использовать следующую команду:
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
после этого вы должны перезагрузить текущую оболочку или открыть новый сеанс терминала и ввести следующую команду для перезагрузки .файл:
source .bash_profile
вышеуказанное решение будет работать только в том случае, если RVM установлен для текущего пользователя. Более общее решение будет использовать переменную пути RVM:
# The following code loads RVM as user or system install:
[[ -s "$rvm_path/scripts/rvm" ]] && . "$rvm_path/scripts/rvm"
на чистой установке Ubuntu 12.04 я столкнулся с той же проблемой. Установщик RVM создает или добавляет файл с именем~/.bash_login необходимый бит кода, чтобы избежать исходной проблемы:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
однако это, похоже, не вызывается. Добавление его в~/.bashrc и решен вопрос для меня.
в моем случае на Ubuntu, запись в ~/.bashrc и было:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && ."$HOME/.rvm/scripts/rvm" # BAD
вместо:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # WORKING
обратите внимание на недостающее пространство между ними . и " $ HOME.
кроме того, если это проблема, вы также должны заметить ошибку сверху при запуске терминала.
У меня была глобальная установка RVM, которая работает /etc/profile.d/rvm.sh - ... Однако для этого скрипта требуется установить BASH_VERSION или ZSH_VERSION. Я бежал от crontab, который использует "sh".
Я создал сценарий-оболочку, который использует /bin / bash для источника /etc/profile.d/rvm.sh.
вам нужно изменить настройки эмулятора терминала, чтобы разрешить войти ракушка. Иногда требуется использовать
/bin/bash --login
Как команда.