メモ:sudo gem install派からgem install派への移行

.gemrc に "--user-install" を追記

以下のスクリプトでgemを移動(結構時間を食うと思う)。
中身は gem list を打ち込んでそれをパースして云々ってやってるんだけど、もしかするとファイルを移動するだけで良いかも。
調べるのも面倒だし、一度消して、もう一度インストールしちゃえい!ってことでやった。

puts "gem list > /tmp/gem_list"
system "gem list > /tmp/gem_list"
str = IO.read("/tmp/gem_list")
gems = str.lines.inject([]) do |res, line|
  res ||= []
  res << [$1, $2.split(", ")] if line.match(/\A([a-z\-_]*) \(([\w\.,\s]*)\)/)
  res
end
l = gems.map{|g| g.first}
puts "sudo gem uninstall #{l.join(' ')}"
system "sudo gem uninstall #{l.join(' ')}"
gems.map do |g| 
  g.last.each do |g2| 
    l = g.first + " -v='#{g2}'"
    puts "gem install #{l}"
    system "gem install #{l}"
  end
end