bash のプロンプトをいじる
Ubuntuのbashで、デフォルトの設定のままだと深いディレクトリに入ったときにこんなふうになってしまいます。
inohiro@ubuntu:~/Projects/aaa/trunk/openid_sample/app/controller$
長い。
プロンプトの設定は.bashrcや.bash_profileで行えばよいとのことですが、難解でよくわからない。でも現在の設定(PS1)は、
inohiro@ubuntu:~/Projects/aaa/trunk/openid_sample/app/controller$ echo $PS1 \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$
で知ることができるので、.bashrcとにらめっこしながらどの設定が読み込まれているか探します。
どうやらこれのelseの中が読み込まれてるっぽい。
if [ "$color_prompt" = yes ]; then PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' else PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' fi
「\u」がユーザー名、「\h」がコンピュータ名?、「\w」(小文字)がPWDのようなので、これを「\W」(大文字, カレントディレクトリのみ)に変更。
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\W\$ '
再読み込み、
inohiro@ubuntu:~/Projects/aaa/trunk/openid_sample/app/controller$ source ~/.bashrc
すれば適用されました。
inohiro@ubuntu:controllers$
Macも同じように.bashrcとか.bash_profileとかに書けばよいみたいです。最初の設定はどこに書いてあるんだろうか...
参考情報
その他
- シェルスクリプトで、if文を閉じるには「fi」と書くようだ。おもしろい。
- All commands | commandlinefu.com