看来,红宝石2.0.0增加了“默认”宝石混合和宝石卸载使他们不可拆卸的。
你如何删除所有非默认的宝石?
看来,红宝石2.0.0增加了“默认”宝石混合和宝石卸载使他们不可拆卸的。
你如何删除所有非默认的宝石?
我用这一个行脚本。
for i in `gem list --no-versions`; do gem uninstall -aIx $i; done
它忽略默认宝石错误和公正进行。 简单言自明。
首先,进入目录的宝石一样../ruby/2.0.0-p195/lib/ruby/gems/2.0.0/specifications
你会发现一个新的目录默认情况下 ,它包括随红宝石2.0的所有默认宝石
将所有* .gemspec存储在默认目录规范目录并删除空的默认目录。
然后,你可以做任何你想做像旧时代。:-)
我在红宝石写了一个脚本来删除所有非默认的宝石。
https://gist.github.com/nixpulvis/5042764
这现在需要的,因为一些宝石被标记为“默认”的安装红宝石不像之前2.0.0,并且不能与卸载gem uninstall
。 这使得删除所有宝石不行先前流行的方法。
仅供参考这里。
gem list | cut -d" " -f1 | xargs gem uninstall
我还没有找到,而不是排除“默认”宝石一个更好的答案:
/usr/local/bin/gem list --no-versions | \
grep -v -E "(bigdecimal|io-console|json|minitest|psych|rake|rdoc|test-unit)" | \
xargs --no-run-if-empty /usr/local/bin/gem uninstall --executables --user-install --all --force