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

スポンサードリンク

関連コンテンツ

オススメ記事

【webpack 4】npm-scriptsでオリジナルのコマンドを設定する方法

※追記(2018/5/15) 殆ど意味のない例を使っての説明にのちのち後悔し、余分な部分を大幅に削除しました。 畳んだ布団が飼い猫のお気に入りの場所になってます。@It_is_Rです。

【Android Studio】TextView 文字の色やサイズ、書体を変更する方法。

サイズは大きいほど、押しがいがあります。@It_is_Rです。 スマホのボタンの話ですよ。何を考えてたんですか? Androidアプリ開発、8回目となりました。 今回はこれまでに学習した T

gulp

gulp4完全攻略ガイド。インストールから使い方まで徹底解説!

幸せそうな人を見ると、転べって思います。@It_is_Rです。 Webページを制作するとき、sassをcssに変換して使用することが多いと思います。 今回はgulp4の使い方を、インストールか

メインループを作ってみよう!

小学生からのJavaScript入門。ゲームのメインループを作ってみよう!

小学生からのJavaScript入門講座(にゅうもんこうざ)、第7弾です。 突然(とつぜん)ですが、ゲーム開発(かいはつ)の基本として大切なことってなんだったか覚えていますか? そうです。「変

【Android Studio】じゃんけんゲームの作り方(アプリ開発の基本)

限りなくじゃんけんが弱い@It_is_Rです。 Androidアプリ開発、11回目となりました。 そろそろ何かアプリを作ってみたいですよね。基本は大事ですが、一番つまらないですね。 そこ

WordPress

無料で広告なしのWordPressサイトを立ち上げる方法。

猫を飼っています。でも犬派です。何か文句ありますか? …まぁ、最終的に動物全般が好きなんです。爬虫類から哺乳類、鳥類まで好きです。動物を飼っている人、今すぐ写真を@It_is_Rに送り付けて下さい。

Docker Composeで自分のWordPressサイトをローカル開発環境に反映!

ローカルにWordPress開発環境を整えてテーマを作成することがあるのですが、単にローカルに環境を作っただけでは記事がなく、テーマのイメージが分かりません。@It_is_Rです。 かといって、te

wordpress

WordPress – デフォルトで用意されたショートコード一覧と使い方。

昔は WordPress の画面が真っ白になって、頭も真っ白になったこともありました。@It_is_Rです。 WordPress では、プラグインを使ったりしない限り、投稿記事のなかで php

FC2 blog customize

FC2ブログ ”最強” カスタマイズ入門講座。ヘッダーをカスタマイズ。

寒くなってきましたね。皆さま前かがみになって、まるで亀の様です。@It_is_Rです。 皆様がブログを見て、一番最初に目に入ってくるのはどこでしょうか? 殆どの場合、ヘッダー部分ですよね。つま

【Bootstrap 4】記事一覧ページなどで使える「カード」の使い方

Bootstrap4の使い方、第7回目です。 トップページなどを見ると、記事の一部が抜粋された記事一覧が表示されているサイトをよく見かけます。 今回はそんな記事一覧ページを作るのに便利な「カー

コメントをどうぞ!

メールアドレスが公開されることはありません。