MacBook Airを使っていますが、ターミナルを開いている時間が長い @incmplt です。
Macを初期設定するときに毎回忘れてしまうので、今回は bash の設定をメモ。
Table of Contents
環境を整えるために bash 設定ファイルを準備する
Mac OS X標準では bashがインストールされており、直ぐに ターミナルからssh,scpができます。
.bash_profile などが無くても、/etc/profile, /etc/bashrc は存在するので最低限のシェル設定がされた状態でターミナルが起動します。
ただ、インストール直後は .bash_profile や .bashrc が無いので自分で作成します。
基本となる .bash_profile を準備
.bash_profile は、余りごちゃごちゃさせる必要も無いので…
1 2 3 | if [ -f ~/.bashrc ]; then . ~/.bashrc fi |
こんな感じのシンプルなファイルにしておきます。
.bashrc で準備する細かな環境設定
私は、home(~/)以下に、bin や work などの作業ディレクトリを作っていますので、その設定を .bashrcに記述していきます。ついでに carbon emacs の設定も…ということで、次のような感じ。
1 2 3 4 | export PATH=$PATH:~/bin alias emacs='/Applications/Emacs.app/Contents/MacOS/Emacs' alias ducks='du -cks *|sort-rn|head -11' |
Mac OS X には、標準で emacs(コンソール用)がインストールされていますが、私は carbon emacsを使っているので、ターミナルから emacs と入力したときに carbon emacs が立ち上がるように alias 設定しています。
~/bin 以下に便利な自作ツールを保存しているので、binディレクトリへのパスも追加しています。
ところで .bash_profile と .bashrc の違いは?
よくよく見ると .bash_profile は .bashrc を読み込んでいるだけで、何も有効な処理をしていません。
.bash_profile と .bashrc の違いってなんでしょう?
.bash_profile は、ログイン時に呼び出されます。.bashrcはbashが起動するときに呼び出される設定ファイルになります。
1 | $ bash |
のように、bash の中から シェルを呼び出した時に、読み込まれるのが .bashrc になります。
ログイン1回だけの処理もありますが、ほとんどはシェル毎にPATH設定したりということになりますので .bashrc に各種設定を入れておいて呼び出すのが便利ですね。
ちなみに .bash_logout も便利に使えます
.bash_logout がちゃんと動くのかは、検証が必要なのですが、ログアウト時に処理される物なので tmpファイルなど一時的な作業ファイルなどを削除する処理を記述しておくには良いかもしれません。
Linuxサーバーの管理などが多いので、bash や perl などが標準で使える Mac OS Xはいいですね。
Windows で Cygwin+X11 とか Strawberry Perlとかで環境を作ると、どうしてもWindowsの世界が見え隠れして、コンパイルにも不自由するので、Mac OS Xからは離れられそうにありません。