動かざることバグの如し

近づきたいよ 君の理想に

シェルスクリプトからrbenv上のrubyを実行したい

環境

  • rbenv

通常rbenvは/etc/profile.dか~/.bashrcなどの読み込み時にロードされる。 が、シェルスクリプトからだとロードされないのでrbenvが無い環境扱いになってしまう。

ので、以下のように明示的にrbenvを読み込ませる必要がある。

#!/bin/bash

export PATH="/usr/local/rbenv/bin:$PATH"
eval "$(rbenv init -)"
rbenv shell 2.4.0
echo ruby -v

これで

ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]

とか表示されればおk