1. HOME
  2. »
  3. プログラミング・Web
  4. »
  5. ターミナル
  6. »
  7. zsh のインストール方法と、うまく起動しない時の対処法。

zsh のインストール方法と、うまく起動しない時の対処法。

かっこいいものが大好きな@It_is_Rです。

そこで今回は、ターミナルをかっこよくする為の方法を、何回かの記事に分けて書いてみたいと思います。
今回、第一回目は zsh ( Z Shell ) のインストール方法と、うまく起動しない時の対処法について解説します。

目次
  1. zsh のインストール
  2. zsh の基本
  3. PATHについて
  4. 起動を zsh に設定(ログインシェル)

zsh のインストール

まずはインストール方法です。
Homebrew を使ってインストールします。

Homebrew をまだインストールしていない人は、Homebrewを使いこなせ!Macへのインストールや使い方。をご覧ください。

インストールは以下のコマンドを実行してください。

$ brew install --without-etcdir zsh

インストールされているかどうかは、

$ brew list

で、確認することができます。

zsh の基本

まずは zsh の基本の使い方を紹介します。
もしも以下のコマンドで正常に動作しない(インストールしたものと違うバージョンが起動するなど)場合は、 zsh がうまくインストールされていない、もしくはPATHが通っていない可能性があります。
PATHに関して、詳しくはこの下の「PATHについて」をご覧ください。

zsh に切り替える

zsh に切り替えたい時は、

$ zsh

で、切り替えることができます。

バージョンを確認する

以下のコマンドでバージョンを確認することができます。

$ zsh --version
zsh 5.4.2 (x86_64-apple-darwin16.7.0)

また、 zsh が動いている状態で、以下のコマンドを入力すれば、今動いているバージョンを表示させることができます。

% echo $ZSH_VERSION
5.4.2

終了する

以下のコマンドで終了します。

% exit

PATHについて

PATHを通すとは、コマンドを実行する為のファイルの場所を、パソコンに教えてあげることです。
上で紹介したコマンドがうまく動作しない場合は、PATHが通っていない可能性があります。

PATHを通すことについて、簡単な基礎知識も兼ねて、紹介します。

PATHを確認する

パスを確認するには、以下のコマンドを実行します。

$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

このように : を区切りとして表示されます。
ずらっと横並びが見にくい場合は、trコマンドで:\nに変換します。

$ echo $PATH | tr ':' '\n'
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

デフォルトの場合、Homebrewでインストールしたものは、 /usr/local/bin に保存されます。
なので、 /usr/local/bin があるかどうか、確認してください。

/usr/local/bin には、システム標準でないものを入れると覚えておけばいいと思います。

パスの優先順位

パスの優先順位は、最初に書かれているものから順に優先となります。

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

ですと、 /usr/local/bin が一番優先されます。

PATHを通す

もしも /usr/local/bin がない場合はPATHを通してみましょう。
今回は3通りの方法を紹介します。

.bash_profile (ユーザーごと)

まず .bash_profile を使う方法を紹介します。(bashが読み込まれた時に実行されます。)
.bash_profile を使うと、ユーザーごとのPATHの設定ができます。

$ echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bash_profile
$ source ~/.bash_profile

これは、 export PATH=/usr/local/bin:$PATH を .bash_profile に書き込む命令です。
実際に、 vi ~/.bash_profile で確かめると、 export PATH=/usr/local/bin:$PATH が追加されていると思います。

(ターミナル起動時に zsh を読み込む設定にしている場合は、この方法は使えません。以下で解説する方法のどちらかを使ってください。)

.zshenv (ユーザーごと)

.zshenv に書き込む方法もあります。ターミナル起動時に zsh を起動するように設定している人は、こちらの方法か、グローバルに設定する方法がいいと思います。

$ echo 'export PATH=/usr/local/bin:$PATH' >> ~/.zshenv
$ source ~/.zshenv

.zshenv は、 zsh を起動したときに読み込まれるファイルです。

/etc/paths (グローバル)

グローバルに設定してしまう方法もあります。

$ sudo vim /etc/paths
Password:

VIM が立ち上がるので、以下のようにします。

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

このように /usr/local/bin を一番上に移動させます。

違うバージョンが起動してしまう場合

zsh コマンドを実行したとき、違うバージョンが起動してしまう場合があるかもしれません。
例えば、Homebrewを使って、 zsh 5.4.2 をインストールしたものの、 zsh 5.2 が起動するといった感じです。

これは、Homebrewでインストールしたものではなく、Macにもともと入っていたものが起動してしまっている可能性があります。
そんな時はPATHの優先順位を変更すると直る可能性があります。

とりあえず、以下のファイルは確認してみてください。

$ vim ~/.bash_profile
$ vim ~/.zshenv
$ vim /etc/shells

先ほども書きましたが、優先順位は先に書かれているものが優先です。
Macにもともと入っているものは、 /usr/bin に、
Homebrewでインストールしたものは、 /usr/local/bin に入ります。(デフォルトの場合)

なので、 /usr/local/bin を優先にすれば、Homebrewでインストールしたものが開かれるはずです。

まず確認するのは .bash_profile や .zshenv に、このような記入はありませんか?
この記入ですと、 /usr/bin が優先されてしまいます。

export PATH=$PATH:/usr/local/bin

/usr/local/bin を優先させたいので、正しくはこうです。

export PATH=/usr/local/bin:$PATH

もう一つ確認する場所は、 /etc/paths です。
これは、上で紹介したように、直してみてください。

それでも見つからない場合は、以下のファイルも見てみましょう。

$ vim ~/.bashrc
$ vim ~/.zshrc

起動を zsh に設定(ログインシェル)

Macのデフォルトでは、ターミナル起動時には bash が読み込まれます。
そこで、ログインシェルを zsh に変更してみます。

$ sudo vi /etc/shells
Password:

開かれたファイルに、 /usr/local/bin/zsh を追加します。

# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/usr/local/bin/zsh

その後、以下のコマンドで、ログインシェルが変更されます。

chsh -s /usr/local/bin/zsh

この企画の一覧はこちら

  1. zsh のインストール方法と、うまく起動しない時の対処法。
  2. .zshrc で zsh をカスタマイズしてみよう。(プラグイン無し)
  3. zplug を使ってプラグインをインストール、管理する。
  4. enhancd で cd コマンドを超便利に! インストールと使い方。

スポンサードリンク

関連コンテンツ

オススメ記事

【 gulp 】 超便利! Sass で Normalize.css などをインポートする方法。

ふと立ち上がった瞬間に、ホットマットを猫に奪われる@It_is_Rです。 全然どいてくれない。 今回は gulp を使って、 Sass ファイルから Normalize.css などをインポー

とってもかんたん!iPhoneアプリ開発

SwiftUIでじゃんけんゲームを作ろう。かんたんiPhoneアプリ開発入門

SwiftUIは、2019年にアップルが発表したフレームワークです。 SwiftUIを使って、iPhoneで遊べるじゃんけんゲームを作成してみましょう。 この入門ではXcodeを使いますので、

【Xcode7】Swift2でMacアプリ開発。Storyboardでボタンを作る。

喧嘩するほど仲がいいとは言いますが、喧嘩する相手がいません。友達がいないということでしょうか。@It_is_Rです。 前回、StoryboardでMacのウィンドウに文字を表示しました。しかし、

webpackの設定ファイル「webpack.config.js」の使い方を覚えよう

webpack.config.jsはwebpackを使う上での設定ファイルです。今回は、webpack.config.jsの使い方を紹介します。 webpack.config.jsとは

carousel

【Bootstrap 4】くるくる回転するUI、カルーセル機能のを実装方法!

Bootstrap4の使い方、第8回目です。 サイトをみていると、画像を横並びにしてくるくると回転するカルーセル機能を実装しているサイトがありますよね。 Bootstrap4には、カルーセルを

zplug を使ってプラグインをインストール、管理する。

二つのことを同時にできない、@It_is_Rです。 今回はターミナルをかっこよくするシリーズ、第三回目です。 zplug を使って、プラグインをインストールする方法を紹介します。

リセットCSS は何を使う? おすすめ8選(コピペも可能!)

Web開発でブラウザごとの表示の違いをリセットしてくれる リセットCSS というものがあります。 しかし、何を使っていいのかと感じている人もいると思います。 今回はこの リセットCSS につい

Android Studio

【Android Studio】新規プロジェクトを作成する方法

前回、 Android Studio のインストールが完了しました。 その続きから始めていきましょう。 今回は新規プロジェクトを作成する方法です。 新規プロジェクトの作成 それ

【Android Studio】TextView を使ってテキストを変更、追加する方法。

TextViewの文字列を変更するより、これまでの人生を変更したい@It_is_Rです。 Android Studioを使ったアプリ開発講座6回目です。 今回はアプリに表示されたテキストを変更

WordMove | 運用中の WordPress 環境をローカルと FTP で同期

道が覚えられない、@It_is_Rです。 人生さえ彷徨い続けてここにいます。 さて、運用中の WordPress サイトの環境を、ローカル開発環境と同期したい時、 WordMove を使うとと

コメントをどうぞ!(コメントは承認後に反映されます)

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です