tkuchikiの日記

Linux やプログラミングについて書きます。

指定ディレクトリ以下に配置している gem を install し直す script

ユースケースとしては、CentOS 6 標準の ruby 1.8.7 を使っていた想定で、
/usr/lib/ruby/gems/1.8/gems に入れている gem を、
/rh/opt/ruby193 に gem を install し直すような用途の script です。

gem のディレクト名を awksed で parse して、
gem install GEM_PACKAGE -v VERSION するだけです。

適宜、--no-ri --no-rdoc を --no-document にしたり、
そもそもつけなかったりしてください。

script

  • 第一引数:gem の binary path
  • 第二引数:参照したい gem ディレクトリ

実行例

yum install -y centos-release-SCL
yum install -y ruby193
source /opt/rh/ruby193/enable
./gem_reinstall.sh /opt/rh/ruby193/root/usr/bin/gem /usr/lib/ruby/gems/1.8/gems