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 コマンドを超便利に! インストールと使い方。

スポンサードリンク

関連コンテンツ

オススメ記事

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

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

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

java

Javaのクラスとメソッドの違いとは?ゲーム風に解説。

この頃小説を読んでいなく、何か読みたいなと思っている@It_is_Rです。 Javaを勉強し始めたばかりの人は、何やら難しい単語に混乱する人も多いでしょう。その中で、クラスとメソッドって一体何が

キー入力で文字を切り替えるべ

【JavaScript】ノベルゲーム風にキー入力で文字を切り替える方法! 小学生からのプログラミング入門

小学生からのJavaScript講座です。 前回、文字を一文字づつ表示させる方法と改行の方法を紹介しました。今回はこのプログラムに、キー入力によって文字を切り替えられる機能をつけてみましょう。

パスの書き方を覚えるべ!

パスの書き方を覚えよう。絶対パス、相対パス、ルート相対パスの違い

みなさん、こんにちは。今日もプログラミングの勉強《べんきょう》をはじめていきましょう。 今回は、パスの書き方について学びます。パスというのは、ファイルの場所《ばしょ》を、パソコンに教《おし》え

Node.js

MacにNode.jsをインストールする方法

みなさんこんにちは。@It_is_Rです。今回はMacにNode.jsをインストールする方法を紹介していきます。 インストールの方法はいくつかありますが、今回はインストーラー(pkg)を使った

カスタムロゴの使い方。 WordPress サイトのタイトルを画像に変更!

笑いたい時に笑えず、笑っちゃいけない時に笑えてくる@It_is_Rです。 今回はカスタムロゴの使い方を紹介したいと思います。 このシリーズの前回の記事はこちらです。 【 WordPres

PythonでUSBメモリのパスワードを解析。総当たりでロック解除してみよう!

みなさんこんにちは。@It_is_Rです。今回はPythonを使って、総当たりでUSBメモリのパスワードを解析する方法を紹介します。(※このストーリーはフィクションです) Rりこ師匠、

scratch

Scratchの使い方と、ゲーム作りの基礎知識を学ぼう! 小学生からのプログラミング入門

さて、今回もプログラミングの勉強(べんきょう)をはじめていきましょう!前回の「小学生からのプログラミング入門。プログラミングってなぁに?」では、プログラミングっていうのが、どういうものなのかを学びま

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

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

【Android Studio】開発したアプリの実機テストを行う方法。

どうも、頭がすっからかんの@It_is_Rです。 やかましいわ。 今回は Android Studio で実機テストする方法を紹介します。 これからアプリ開発をしていく上で必要不可欠な実機テ

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

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