Isso aconteceu comigo com o Vagrant, mas o problema não é específico para aquela joia.
Eu estava usando uma versão mais antiga do Vagrant que foi instalada por meio de uma gema que fornecia um binário. Eu estava usando o rbenv. O mantenedor do Vagrant depreciou a gem e forneceu um instalador. Desinstalei todas as minhas joias do Vagrant e executei o instalador. Então aconteceu isso:
jd at James in ~
><((°> vagrant --version
rbenv: vagrant: command not found
jd at James in ~
[127] ><((ˣ> echo $PATH
/usr/local/share/npm/bin /usr/local/share/python /usr/local/bin /Users/jd/.rbenv/shims /Users/jd/bin /usr/bin /bin /usr/sbin /sbin
jd at James in ~
><((°> /usr/bin/vagrant --version
Vagrant version 1.1.5
O que está acontecendo?!
Acontece que rbenv instala shims para todos os binários, que alternam automaticamente para a versão ruby apropriada antes de invocar o binário real. Para consertar toda essa bagunça, execute o seguinte:
rbenv rehash
Definitivamente surpreendente. O pós-moderno (que resolveu esse problema para mim) sugeriu chruby como uma solução potencial sobre a qual você nunca mais vai querer pensar nisso.