著作一覧 |
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]で、ftpして./configureしてmakeしてmake testしてsudo make installする。
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]はて面妖な。
$ echo $PATH /home/arton/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin……どうみても/usr/local/binが先なのだが。
$ /usr/local/bin/ruby ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]だよなぁ。
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]はて面妖な。
$ which ruby /usr/local/bin/rubyだよなぁ。
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [x86_64-linux]
はて面妖な。
というときは、bashが起動したコマンドを覚えているのが原因で、そのおかげで多分、PATHをたどる回数もぐっと減るはず。良く使うコマンドを良く使っていれば。
で、上のようなことをやって、既に起動してしまったコマンドを後から別のパスに置いた場合は、bashのhashを初期化する必要がある。で、それが
hash -r
別にバッシュのハッシュという韻を踏みたかったわけではない(でも面妖という怪しい言葉は使ってみたかった)。
追記:csh、zshだとrehashとなるので、knuさん曰く
kshやbashでも alias rehash="hash -r" しておくとcsh系(zshを含む)との齟齬がなくなって便利
僕はbashメイン(生kshあり)なので、このエイリアスはしないと思うけど、参考まで
ジェズイットを見習え |