【已解决】Ubuntu中让终端只显示当前路径,而不显示绝对路径

【问题】

Ubuntu下,默认情况下,对于终端,是显示出绝对的路径的,比如:

terminal show full path

现在想要让其只显示相对路径。

 

【解决过程】

1.参考:

Linux中,去掉终端显示的当前目录的绝对路径

去将.bashrc中的,有关PS1的部分,从:

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

 

改为:

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

for ps1 change from w to W

2.保存修改,退出gedit。然后再source一下,发现终端的标题变成当前路径了:

after source title become short

3.再重启终端,看看是否生效,结果还是不行。

4.再去把上面那个PS1中的值,变成:

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

然后保存退出gedit,再source一下,结果就可以了:

crifan@ubuntu:~/develop/crosstool-ng/crosstool-ng-1.18.0_build$ gedit ~/.bashrc
crifan@ubuntu:~/develop/crosstool-ng/crosstool-ng-1.18.0_build$ source ~/.bashrccrifan@ubuntu:crosstool-ng-1.18.0_build$ 

效果如下:

now prompt also show short path

 

【总结】

想要将Ubuntu的终端,中的绝对路径的显示,变成当前路径(文件夹)的话,则需要去修改自己的.bashrc,将其中的小写的w,改为大写的W即可:

(1)针对终端的标题title

从:

# 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

改为:

# 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

 

(2)针对终端的当前显示prompt

从:

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 [ "$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



发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量