inohilog

/var/log/inohiro.log

bash のプロンプトをいじる

Ubuntubashで、デフォルトの設定のままだと深いディレクトリに入ったときにこんなふうになってしまいます。

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とかに書けばよいみたいです。最初の設定はどこに書いてあるんだろうか...

その他