😀

macの環境変数のPATH

2024/03/09に公開

macの環境変数のPATHがどんなもので、どのように設定するか

環境変数のPATH

OSにコマンドの実行ファイルまでの絶対パスを教えるための変数

一例として、ファイル編集コマンド vi について考える
vi コマンドは /usr/bin ディレクトリの中にあるが
もしPATHを設定しないと、毎回シェルで /usr/bin/vi と絶対パスで実行しなければならない

一方、PATHを設定しておけば vi と打つだけで実行できる
こっちの方が楽だと思う人は、PATHを設定するべき

どこで設定できる?

ホームディレクトリ内の.bash_profileか.bashrcで設定できる
これらについては拙著macの.bash_profileと.bashrcを御参照ください

どうやって?

上記のファイル内でPATH変数をexportするスクリプトを書く

下にGolangのコマンドのパスを指定する例を書く
$PATH:を忘れると面倒臭いことになるので注意
これのトラブルシューティングはこちらを参照

.bash_profile
export PATH=$PATH:/usr/local/go/bin

これでGolangの実行コマンドに毎回 /usr/local/go/bin をつけなくてよくなる

##設定できたか?
シェル上でprintenv PATH と打てば確認できる

##トラブルシューティング - $PATH:を忘れた場合

これを忘れるとまずい
例えば、冒頭で述べた vi を使う時に /usr/bin/vi と打たなくてはいけない問題が発生する

詳しく書くと長くなるので解決策だけを書く

  1. シェルで /usr/bin/sudo /usr/bin/vi ~/.bash_profile を実行する
  2. 一行目に
    export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
    と書く
  3. $PATH:を書き忘れたところに$PATH:を追加する
  4. シェルでsource ~/.bash_profileを実行する

Discussion