2015年1月11日 星期日

設定linux shell 提示字元與ssh 登入的title

查看ubuntu 的.bashrc, 可以發現下列設定:


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
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac


其中可以看到如果要改顏色,可以使用顏色標示包起來

登入shell時,提示符號預設長這樣  username@server:~$

使用putty等軟體經由SSH 連入時,可以看到登入視窗的title也會跟著變,由此可知這個title是從linux內拿來的,就是上述最後一組PS1變數的設定


所以經由上述分析,可以寫一個function, 放在.bashrc內,之後就可以簡單的手動設定想要的提示符號與title

set_title ()
{
        PS1="${debian_chroot:+($debian_chroot)}\[\033[01;32m\]$*\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ "
        PS1="\[\e]0;${debian_chroot:+($debian_chroot)}$*: \w\a\]$PS1"
}



使用方法:
    set_title "test title"


沒有留言:

張貼留言