如何从我的系统中删除RVM (Ruby版本管理器)?


当前回答

当使用implode时,你会看到:

Psychologist intervened, cancelling implosion, crisis avoided :)

那你可能会想用武力

rvm implode --force

然后从以下位置移除RVM:

rm -rf /usr/local/rvm
sudo rm /etc/profile.d/rvm.sh
sudo rm /etc/rvmrc
sudo rm ~/.rvmrc

检查以下文件,删除或注释掉对RVM的引用:

~/.bashrc 
~/.bash_profile 
~/.profile 
~/.zshrc
~/.zlogin

注释/删除/etc/profile中的以下行:

 source /etc/profile.d/sm.sh
 source /etc/profile.d/rvm.sh

/etc/profile是一个只读文件,所以使用:

sudo vim /etc/profile

在做出改变后,使用bang来写!

:w!

最后重新登录/重新启动您的终端。

其他回答

从/中删除RVM加载脚本。Bash_rc或/。Zsh_rc,然后使用:

rm -rf /.rvm

Or:

rvm implode

如果在调用Ruby包时仍然得到env: ruby_executable_hooks:没有这样的文件或目录,这意味着RVM在$PATH中为你留下了一个小礼物。

执行以下命令查找违规脚本:

grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*

然后rm所有的匹配。当然,您必须使用RVM-free gem重新安装所有这些库。

根据RVM的故障排除文档“如何从系统中完全清除RVM的所有痕迹,包括系统范围的安装?”:

Here is a custom script which we name as 'cleanout-rvm'. While you can definitely use rvm implode as a regular user or rvmsudo rvm implode for a system wide install, this script is useful as it steps completely outside of RVM and cleans out RVM without using RVM itself, leaving no traces. #!/bin/bash /usr/bin/sudo rm -rf $HOME/.rvm $HOME/.rvmrc /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm /usr/local/bin/rvm /usr/bin/sudo /usr/sbin/groupdel rvm /bin/echo "RVM is removed. Please check all .bashrc|.bash_profile|.profile|.zshrc for RVM source lines and delete or comment out if this was a Per-User installation."

注意,如果你通过apt-get安装RVM,你必须运行一些比RVM implode或apt-get remove ruby-rvm更深入的步骤来真正卸载它。

参见“在Ubuntu上安装RVM”。

补充@Kingsley Ijomah的回答…

可能需要修复PATH,以便rvm命令也从终端中消失。

要检查您的PATH:

env | grep PATH

要修复您的路径删除RVM目录:

dir_to_remove=/home/user/.rvm/bin
PATH=:$PATH:
PATH=${PATH//:$dir_to_remove:/:}
PATH=${PATH#:}; PATH=${PATH%:}

在这种情况下,如果您有多个目录,请将dir_改为一次删除一个目录。

我需要删除一些rvm和rbenv目录,因为我现在使用asdf。

小心些而已。