.bash_profile追記時のホームディレクトリの表示について

More than 1 year has passed since last update.

.bash_profileに環境変数を追加したのだが、ホームディレクトリの表示に疑問を感じたのでメモしておく。コマンドの書き方がブログ記事や技術本によって様々だったので、気になってしまった。


今回登録したい環境変数

~/.composer/vendor/bin

Laravelをコマンドとして認識させるためだ。


export以降をダブルクオーテーションで囲んで実行

$ echo "export PATH=~/.composer/vendor/bin:$PATH" >> ~/.bash_profile

実際に追記されたのはこちら。ホームディレクトリまでのパスが~/のままになっている。

export PATH=~/.composer/vendor/bin:<今まで登録した環境変数>


次はダブルクオーテーションなしで実行

$ echo export PATH=~/.composer/vendor/bin:$PATH >> ~/.bash_profile

今回はホームディレクトリまでのパスが展開されている。

export PATH=/Users/ユーザー名/.composer/vendor/bin:<今まで登録した環境変数>


.bash_profileの理想の書き方とは

自分としてはセミコロンで延々とつないでいきたかったのだが・・・(これも長すぎると見辛いが。)どちらにしてもexportがもう一文追加されてしまうようだ。

.bash_profileをスマートにしたければ、現状では自分で直接編集するしかないと感じた。

$PATH自体は、ダブルクオーテーションの有無にかかわらず変数展開されるようだ。$PATHのまま表示されて変数として扱われれば、少しはコードが短くなると思ったのだが。

パスとしては変わらないが、.bash_profileのホームディレクトリの表記には3種の方法があることもメモしておく。自分としては、$HOMEが視覚的にわかりやすい。


  • ~(チルダ)

  • $HOME

  • /Users/ユーザー名


結局こうした

自分の手で.bash_profileを編集し、セミコロンで繋ぐことにした。

あ、最後にこれを忘れずに!実行しないとせっかく作ったPATHが反映されない。

$ source ~/.bash_profile

このコマンドで変数の内容も確認!こちらは実行するとホームディレクトリが全て展開された状態で表示される。

$ echo $PATH

今日はここまで。