こんにちは、みみです。
日頃iMacでひっそり作業をしているのですが、お外でも作業できるように、お下がりのMBPの開発環境を整えていたら、シェルスクリプトで躓いたのでメモしておこうと思います。
前のやり方でやろうとしたらportコマンドが通らなかったのでした。
まずはecho $PATH
あれ、コマンドが通らないなーと思ったら、まず
echo $PATH
と入力すれば、PATHという変数に何が設定されてるか分かります。コマンドのパスを調べる
例えば、portだったら
sudo find / -name "port"
とかして、場所を調べます。
今回は
/opt/local/bin:/opt/local/sbin:/opt/local/lib/mysql56/bin
でした。このパスが設定されていなければ、書き足せばよいです。
zsh + prezto にする(ちょっと寄り道)
と、その前に、シェルの環境をzshにします。
あんまり良くわかってないんですが、兎も角便利なのでzshにしておいたほうが良いらしい。(※ コマンドを通すためには特に必須な作業ではありません。)
https://github.com/sorin-ionescu/prezto
ここのInstallation の1〜4を実行します。
1. zshを開始して
zsh
2. このリポジトリをクローンします
git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"
3. zshの設定をします
setopt EXTENDED_GLOB for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" done
4. デフォルトのshellをzshに設定します
chsh -s /bin/zsh
これでzshに移行完了。
PATHを通す
zshで通したいコマンドのPATHの設定をします。
vi ~/.zshenv
として、.zshenvを開きます。
(.zshenvはzshの設定ファイル。bashの場合だと.bashrcとかになります。)
#Ensure that a non-login, non-interactive shell has a defined environment.
の上に
setopt no_global_rcs export PATH="/opt/local/bin:/opt/local/sbin:/opt/local/lib/mysql56/bin:$PATH"
と書いて保存。このPATHの値は通したいコマンドで変わります。
設定したPATHを反映するためには
source ~/.zshenv
を実行するか
ターミナルを新しいウィンドウ(タブ)で開く必要があります。