こんにちは、うしまる(@usitubo)です。
今回のテーマはズバリ使用しているMacへPATHを通すやり方について解説していきます。
という人向けの記事になります。
PATHとは?
PATHとは、環境変数と言ってコマンドを実行する際、いちいちプログラムが保存されているディレクトリの場所を記載しなくても実行することが可能なように、そのプログラムが保存されている場所を設定する変数となります。
command not foundとは?
command not found: xxxx
Mac OS Xでコマンドラインツール「ターミナル」を使って操作をしていると使えないコマンドが出てきたりします。
そのコマンド使えないよ?ってターミナルが言っているのですが、特にプログラミングサイトを見ながら実装していたりすると、事前にコマンドに対応したソフトウェアが不足していたりパスが通っていないことで表示されるメッセージになります。
- コマンドに対応したソフトウェアがインストールされていない
- コマンドのPATHが通っていない
command not foundを解消する方法
1.コマンドに対応したソフトウェアがインストールされていない
この場合は、インストールを行いましょう。
検索したいコマンド + インストール
とかで検索すると出てくると思います。
例えばMacで初めて色々していこうとした時「homebrew」がよく出てきますが
homebrew インストール
で検索してみるとインストール方法が出てくるので解消できると思います。
2.コマンドのPATHが通っていない
この場合は「.bash_profile」もしくは、「.bashrc」を更新します。
ホームディレクトリにこれら2つのファイルどちらかがあるかどうか確認してみてください。
デフォルトだと「.xxxxx」みたいなファイルは表示されない設定となっています。
そんな時は、Command + Shift + . をFinderのホーム上で押すと表示されるようになります。
ファイルがない場合は新規でファイルを作成する必要があります。
具体的にはターミナル上で下の様に入力します。
echo 'export PATH=$PATH:[登録したいPATH]' >> .bashrc
$PATHはすでに登録されているPATHを指します。ここを忘れてしまうと以前登録したPATHが消えてしまうので注意が必要です。そして登録したいPATHをその後ろへ登録します。複数登録する場合は
[登録したいPATH-1]:[登録したいPATH-2]
のような形で間に「:」を入れる様にしましょう。
具体的今回はhomevrewのパス追加を記載します。
echo 'export PATH=$PATH:/opt/homebrew/bin' >> .bashrc
みたいな形で入力します。
ターミナルを再起動するかそのまま使いたい場合は下のコマンドを入力することで新しい設定が反映される様になります。
source .bashsh
実際にどんなPATHが登録されているのかを調べるには
echo $PATH
と入力すると
~ $ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/homebrew/bin
といった形で確認することができますよ〜
ここでもしターミナルを起動しても設定が反映されていない場合、デフォルトで起動するターミナルの種類が異なる場合があります。Macではデフォルトでbashとzshが存在しています。
どちらを使っているのか確認したい場合は
1.「環境設定」>「ユーザとグループ」を選択
2. 左下の南京錠を解除
3. ユーザを選択して右クリックで「詳細オプション」を選択
4. ログインシェルの場所を確認もしくは変更することで使いたいシェルを選択
zshで登録する場合は、bashの部分をzshに置き換えて同じ手順を実行することで反映することができます。
まとめ
command not foundが出てきた場合は、下の2つを確認してみましょう。
- コマンドに対応したソフトウェアがインストールされていない
- コマンドのPATHが通っていない
コマンドのPATHを通したい場合は
bashの場合
echo 'export PATH=$PATH:/opt/homebrew/bin' >> .bashrc
source .bashsh
zshの場合
echo 'export PATH=$PATH:/opt/homebrew/bin' >> .zshrc
source .zshrc
となります。
それでは、今回はこの辺でノシ
command not foundというメッセージが出てきた!