[教授でもできるMac OS X... home], [X11, TeX, gs, gvの設定に戻る]

教授でもできるBashの設定

Terminalで、echo $SHELL と打って、/bin/bash と出て来たら、BashというUnixのshell が使われています。その場合は、次のようにBashの設定を変更します。 これにより、Terminal からでも xterm からでも同じPATHなどの環境が使え、かつ /usr/local/bin に入れた 日本語の扱えるgs や gvが必ず使われるようになります。

もし、/bin/tcsh などを使っている場合は、このページは無視してください。

0. もし、/bin/tcsh から /bin/bash に切り替えたい場合

/bin/tcsh を用いていても、特に問題はありませんが、/bin/bash に切り替えたい場合は、次の 手順に従ってください。

  1. 次に示すように、.bashrc と .bash_profileを作る。(logoutは今しなくてよい)
  2. /Applications/Utilities/NetInfo Manager を立ち上げる。
  3. /users/(yourUserID)を選び、左下のロックをクリックして、パスワードを入れる。
  4. shell の値を/bin/bash に変更する。
  5. 左下のロックをクリックし、鍵をかけておく。
  6. 一旦 logout した後、login し直す。

1. 設定の仕方

  1. アプリケーション>ユーティリティ>ターミナルを開き、 Emacs か vi か pico を使って.bashrc と .bash_profile の二つのファイルを編集します。
    (Emacs も vi も pico も知らない人は、多分これらのファイルは持っていないでしょうから、ターミナルで例えば
    cat > .bashrc
    						
    と打ったのち、下の .bashrc用の2行をマウスで選んで ターミナルの上でペーストし、その後、ctrlキーを押しながらDを押します。.bash_profileについても同様。)
  2. Home directoryに .bashrc というファイルを作る。中身は
    	test -r /sw/bin/init.sh && . /sw/bin/init.sh
    	export PATH=/usr/local/bin:${PATH}
    		    			
    (初めの test -r .... の行は、Finkを使わない場合はなくてもよい)
  3. Home directoryに .bash_profile というファイルを作る。 中身は
    	source .bashrc
    					
    Finkそのものをinstallしたり /sw/bin/pathsetup.sh を走らせると
    test -r /sw/bin/init.sh && . /sw/bin/init.sh
    を ~/.bash_profile の最後に入れるが、この行は ~/.bashrc に移動する。
  4. 上に示すように .bashrc と .bash_profile を設定したら、一旦 logout した後、login し直す。 これにより、Terminal でも xterm でもshellの設定が有効になる。

2. 若干の注意点

3. 上のように設定する理由

Terminal を走らせると、/etc/profile と ~/.bash_profile が 実行されるが、/etc/bashrc や ~/.bashrc は実行されない。 それに対し、X11からxtermを走らせると、 /etc/profile と ~/.bash_profile は実行されないが、 /etc/bashrc と ~/.bashrcが実行される。

そこで、Terminal, xterm, どちらを走らせても、 PATH と DISPLAYの環境変数が設定されるように、 共通の設定は ~/.bashrc にまとめ、 ~/.bash_profileからは~/.bashrc を実行する。 これにより、/usr/local/bin, /sw/bin, /usr/X11R6/bin などが PATHに並ぶ。

/usr/local/bin の追加を test -r /sw/bin/init.sh .... の後に しているのは、/usr/local/bin が Finkの使う /sw/bin など よりも前に検索されるようにするため。 こうしておくと、万が一、gv (ghostview)や gs (ghostscript)がFink で入れられたとしても、 日本語を正しく扱える(/usr/local/bin 内の)gv やgs が 使われる。


2008-05-20 Taku Yamanaka (Osaka Univ.)