0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

アップデートによりシェルスクリプトがbashからzshに変わった時の対処方法

Last updated at Posted at 2020-04-21

#まえがき
2020/3末、macをアップデートしてからrails sでサーバを立ち上げると、

Your Ruby version is 2.6.3, but your Gemfile specified 2.6.5

となるので、bundle installで、一旦はサーバーが立ち上がるようになるのですが、翌日などに立ち上げると、表示が出て立ち上がらなくなった。

#環境

  • Ruby 2.6.5
  • Rails 6.0.2.1

#状況確認
###①Rubyのバージョンの確認

ruby -vすると、

ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]

2.6.5はインストールしているのですが、2.6.3はインストールした記憶がない…(したのかな?)

###②rbenvの確認

which rubyすると、

ユーザー名@mba desktop % which ruby
/usr/bin/ruby

このように表示された場合、rbenvが反映されていません。システムのRubyを参照したままになっています。

###③シェルスクリプトの確認

echo $SHELL
# 結果がbin/bashの場合
cat ~/.bash_profile
# 結果がbin/zshの場合
cat ~/.zshrc

すると、結果が、bin/zshでした。

そして、cat~/.zshrcしたところ、

cat: /Users/ユーザー名/.zshrc: No such file or directory

となりました。次に、

echo 'eval "$(rbenv init -)"' >>  ~/.zshrc

を実行。

そして再度、cat ~/.zshrcを実行。その結果は、

eval "$(rbenv init -)"

##原因

アップデートした際、シェルスクリプトがbashからzshに変わった事で異常が起きている。

##対処法

###①open ~/.zshrcでファイルを開き、以下に置き換える。

# Homebrew
export PATH=/usr/local/bin:$PATH
# Homebrew rbenv
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

その上で、次を実行。

source ~/.zshrc
rbenv global 2.6.5

###②ターミナルを再起動して、ruby -vを実行。

結果は、

ruby 2.6.5p114 (2019-10-01 revision 67812)

と表示されました。次に、

###③which ruby を実行。

/Users/ユーザー名/.rbenv/shims/ruby

と表示されました。これでとりあえず大丈夫です。

#あとがき

神里よしとさんの主宰するプログラミングのオンラインサロン「人生逆転サロン」のメンターのたけさんに質問して教えて頂いた流れを忘れないように、ここに書き留めておきます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?