bashrcを設定する
今更ながら、Macの色々な設定(環境変数やエイリアス)を.bashrc
に書きたくなりました。でもそもそもホームディレクトリに.bashrc
が無くて調べてみたら、Macの場合は、Ubuntuみたいに最初から用意されていなくて、自分で.bashrc
も.bashrc
を読み出す.bash_profile
も自分で作らないといけないらしい。.bashrc
とか.bash_profile
の違いはグーグル先生に聞いてください。私は設定は何でも.bashrc
に設定書きたい派なので以下のようにしました。
ちなみにこの後は、かなり宇宙語が続きますので、興味のある方のみご覧ください。
bash_profileとbashrcの設定
bash_profile
.bash_profile
は基本何もせず.bashrc
を読むだけにしました。ターミナルを開いて、以下コマンドで.bash_profile
を編集(新規作成)。
$ vi ~/.bash_profile
中身は潔く.bashrc
を読み込むだけ。
if [ -f ~/.bashrc ]; then . ~/.bashrc fi
bashrc
以下で.bashrc
を編集(新規作成)。
$ vi ~/.bashrc
中身は、GitHubでmac dotfilesとか検索して出てきたものを参考に以下のようにしました。
# File navigation aliases alias ..='cd ..' alias _='cd -' alias ls='ls -hF -G' # add colors for filetype recognition alias ll='ls -l -h' alias la='ls -lA' alias du='du -kh' alias df='df -kTh' # completion for sudo command complete -cf sudo # completion for git source /usr/local/etc/bash_completion.d/git-prompt.sh source /usr/local/etc/bash_completion.d/git-completion.bash # display branch name in terminal GIT_PS1_SHOWDIRTYSTATE=true export PS1='\h\[\033[00m\]:\[\033[34m\]\w\[\033[31m\]$(__git_ps1)\[\033[00m\]\$ '
alias設定
ls
で色が出るようにしたりと、少しみやすくなるように設定してます。お好みで。
sudoコマンドの補完をきくようにする
sudoコマンド使うと、コマンドのtab補完がきかなくなるのがイマイチだったので、以下を追記。
complete -cf sudo
これでsudoの後のコマンドも補完が効くようになります。
git関係の設定
補完がきくようにしたり、ターミナルにブランチ名が表示されるように設定します。詳細は以下参照下さい。
注意すること
気をつけないといけないのは、.profile
というファイルが元からあった場合です。その場合、上記のような.bash_profile
を作成すると、今まで読み込まれていた.profile
が読まれなくなってしまうので、.bashrc
に.profile
の内容をコピーするか、.bash_profile
に . ~/.profile
と追記して.profile
ファイルを読み込むようにしてやる必要があります。
.profile
はMacportsとかが作成することがあるので、Macports使っている人は特に注意です、Macportstが使えなくなってしまいます。でもそもそもMacportsよりHomebrew使う方がよいみたいなので、これを機に乗り換えるのがよいかもしれません。
まとめ
今更ながらセットアップしてみました。GitHubで.osx
とかで検索すると、さらにマニアックにMacの設定をコマンドラインからカスタマイズできる設定集が色々見つかりました。自分は結構Macのデフォルトの設定気に入っているので今のところ必要性感じませんが、色々細かくいじりたい人は参考にしてみるのもよいかもしれません。
UbuntuやRaspbian(Raspberry Pi)等に関しては、Qiitaに記事を書いたので参照下さい。
参考リンク
Mac(OSX)で.bashrcを編集する · GitHub
madroom project: Macでsudoに続くコマンドの補完を有効にする
プロンプトをカスタマイズしてgitブランチを表示する - Qiita
関連記事
変更履歴
- 2019/06/03 gitに関する設定追記