No puedo cambiar la versión actual de 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.
Arreglado. Necesitaba agregar:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM
a .zshrc
Esto me pasó a mí también. Yo tenía:
export PATH=~/.rvm/bin:$PATH
Agregado en mi .bashrc.
Todo lo que tenía que hacer era agregar otro
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
al mismo archivo y funcionó! Por supuesto, debes reiniciar tu terminal después de eso.
Su shell no conoce la función RVM. Después de instalarlo, le indica cómo solucionarlo. O vaya a la página de instalación en el sitio RVM y consulte la sección titulada "2. Cargue RVM en sus sesiones de shell como una función"
Ejecute esto una vez para agregar la línea que carga rvm en su ~ / .bash_profile:
$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
o agréguelo manualmente usted mismo. (Tenga en cuenta que en algunos sistemas, querrá ponerlo en otros lugares, por ejemplo en mi sistema, Mac OSX Lion, lo puse en ~ / .profile)
(Kubuntu 11.10) El ~/.bash_profileahora se llama~/.profile
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.profile
source ~/.profile
rvm info # And now the fields display
Para cambiar la versión predeterminada de ruby:
En Ubuntu 11.10
, cambie la configuración de su terminal GNOME:
Vaya a Terminal y luego siga las siguientes instrucciones:
1. Edit > Profile Preferences
2. Open Title and Command Tab
3. Check Run Command as a login Shell
4. Restart terminal
Ejecute este comando en la terminal:
rvm --default use ruby_Version
Para agregar toda la funcionalidad RVM a su .bash_profile, debe usar el siguiente comando:
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
Después de eso, debe volver a cargar el shell actual o abrir una nueva sesión de terminal y escribir el siguiente comando para volver a cargar .bash_profile:
source .bash_profile
La solución anterior solo funcionará si RVM está instalado para el usuario actual. Una solución más general usaría la variable de ruta RVM:
# The following code loads RVM as user or system install:
[[ -s "$rvm_path/scripts/rvm" ]] && . "$rvm_path/scripts/rvm"
rvm_path=/home/myuser/.rvm . /home/myuser/.rvm/scripts/rvm
Solo tuve que invocar la fuente ~/.bash_profile
En una instalación limpia de Ubuntu 12.04 encontré el mismo problema. El instalador RVM crea o agrega a un archivo llamado ~ / .bash_login el bit de código necesario para evitar el problema original:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
Sin embargo, esto no parece ser invocado. Agregarlo a ~ / .bashrc resolvió el problema para mí.
Instalación de RVM, consulte aquí http://octopress.org/docs/setup/rvm/
En mi caso en Ubuntu, la entrada en ~ / .bashrc tenía:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && ."$HOME/.rvm/scripts/rvm" # BAD
en vez de:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # WORKING
Observe el espacio que falta entre. y "$ HOME.
Además, si este es el problema, también debería notar un error en la parte superior cuando inicia su terminal.
Tuve una instalación global de RVM, que ejecuta /etc/profile.d/rvm.sh. Sin embargo, ese script requiere que se establezcan BASH_VERSION o ZSH_VERSION. Estaba ejecutando desde crontab, que usa "sh".
Creé un script de envoltura que usa / bin / bash para obtener /etc/profile.d/rvm.sh.
Debe cambiar las preferencias de su emulador de terminal para permitir el shell de inicio de sesión. A veces es necesario utilizarlo
/bin/bash --logincomo comando.
rvm infoa su pregunta, por favor.$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"es el código a utilizar. Si tiene RVM instalado en su ruta, pero no lo tiene en su secuencia de comandos de inicio, puede obtener elRVM is not a functionerror.