用户通过远程登陆,初始的PS1为\s-\v\$, bash为/bin/bash,然后先后执行/etc/profile和~/.bash_profile中的命令。

/etc/profile文件中调用执行/etc/bash.bashrc,使得默认从终端登陆的PS1初始值设为

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

而用户通过图形界面新建shell,会先后读取/etc/bash.bashrc和~/.bashrc中的配置,由于$TERM为xterm-256color,所以会将PS1设为

\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$

以下为修改远程登陆shell时的bash命令提示符

vi ~/.bash_profile
# 在 ~/.bash_profile中加入:
export PS1="[\u@\h:\W]\\$"
# 使配置立即生效
source ~/.bash_profile

如果要修改图形界面下bash命令提示符,只需要将 PS1="[\u@\h:\W]\\$" 让在.bashrc文件最后,或者做如下修改:

 67 case "$TERM" in
68 xterm*|rxvt*)
69 # PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
70 PS1="[\u@\h:\W]\\$"
71 ;;
72 *)
73 ;;
74 esac

参考: man bash 下的 INVOCATION

效果:

hupeng@hupeng-vm:~/WorkSpace/shell$ vi ~/.bashrc  #未修改之前路径很长,从宿主目录~开始显示
hupeng@hupeng-vm:~/WorkSpace/shell$ cd test/
hupeng@hupeng-vm:~/WorkSpace/shell/test$ source ~/.bashrc #是修改立即生效
[hupeng@hupeng-vm test]$ #路径变短了,只显示路径的basename
[hupeng@hupeng-vm shell]$#关于basename
[hupeng@hupeng-vm shell]$pwd
/home/hupeng/WorkSpace/shell
[hupeng@hupeng-vm shell]$basename `pwd`
shell
[hupeng@hupeng-vm shell]$echo $PS1
[\u@\h \W]\$
[hupeng@hupeng-vm shell]$PS1="PROMPT>"
PROMPT>PS1="[\u@\h \W]\$"
[hupeng@hupeng-vm shell]$ #在shell中修改只能临时生效,要永久生效,必须修改配置文件

PS1以及相关特殊字符介绍:

可以 man bash 然后搜索PS1和PROMPTING

PS1被用作主要的提示字符串使用。

相关特殊字符:

\H:    #完整的主机名称。
\h: #仅取主机的第一个名字,到“.”结束
\u: #当前用户的用户名
\w: #完整的工作目录名称。宿主目录(如/hom/peter)会以~代替
\W: #利用basename取得工作目录名称,所以只会列出最后一个目录
\$: #提示字符,如果是root时,提示符为:#,普通用户则为:
\#: #显示命令的编号(如30,...)
\t: 显示时间为24小时格式,如:HH:MM:SS
\T: #显示时间为12小时格式
\A: #显示时间为24小时格式: HH:MM
\d: #代表日期,格式为weekday month date, 例如:"Tue May 26"
\v: #bash的版本信息 (如4.)

ubuntu修改Bash命令行提示符的更多相关文章

  1. 修改linux命令行提示符

    安装了ubuntu1304版本,发现命令行@后面的名称太长,影响视觉美观,决定修改一下.修改当前用户目录下面的.bashrc文件即可达到目的. 打开.bashrc文件,找到下面的内容:if [ &qu ...

  2. 修改linux命令行提示符路径显示

    命令显示行太长,影响观感,这样需要修改,具体方法: 1. 修改 ~/.bashrc,在最后一行添加: export PS1='[\u@\h\W]$' 其中\u是当前用户名,\h是当前主机名,\w显示当 ...

  3. Ubuntu18 给terminal改个漂亮的命令行提示符

    重新安装了VMware和Ubuntu,但是命令行提示符太单调,不美观,如何更改呢.于是在网上巴拉巴拉搜寻一番. 1.更改PS1环境变量,这俩都可以,我选择第一个: export PS1="\ ...

  4. 环境变量PS1,修改命令行提示符样式

    推荐模板  export PS1="\[\e[37;40m\][\[\e[31;40m\]\u\[\e[0m@\[\e[33;40m\]\H \[\e[36;40m\]\w\[\e[0m\] ...

  5. Linux 终端命令行提示符的艺术--PS1进阶

    话不多说,先瞅瞅我的命令行提示符(有点大): 图中命令行解释:┌[阳历日期/农历日期 时间]├[当前目录下目录数+当前目录下文件数][当前绝对目录]└[用户名@主机名-第几个终端 ╰_╯] 相关配置文 ...

  6. Mac终端命令行提示符格式更改方法

    内容提要: 主要是通过~/.bash_profile文件更改环境变量PS1,修改命令行提示符的显示格式,并展示不同颜色. 本文介绍了默认设置的缺陷,以及需要用到的基础知识,最后介绍了更改命令行提示符格 ...

  7. Linux命令行提示符设置

    我们使用Linux系统时接触最多的是它的命令行窗口,很多时候我们都需要在命令行上输入命令,在输入的命令前都会有提示符,一般系统默认的提示符形式是:[username@host 工作目录]$. 其实,我 ...

  8. linux使用ps1设置命令行提示符

    要自定义命令行提示,需要ps1来设置.完成自定义需要以下几个步骤: 1.编辑~/.bashrc文件 vi ~/.bashrc 2.在.bashrc文件中添加以下一行自定义内容 export PS1=& ...

  9. linu查看系统用户与显示命令行提示符格式信息

    目录 一:查看系统用户whoami 二:显示命令行提示符格式信息变量 一:查看系统用户whoami whoami : 当前窗口登录的用户 who : 当前用户登录系统的终端 作用: 显示当前用户登录了 ...

随机推荐

  1. 怎么让wordpress用sqlite3 搭建轻量级博客系统

    wordpress 默认是用mysql作为数据库支持,这个对个人站长来说还是有点麻烦了些.特别是如果以后网站备份迁移就有点事多了. 之前用django开发自己的博客感觉其实用sqlite3作为数据库插 ...

  2. Java内存不足之PermGen space错误探究

    一.Java 程序的运行机制与普通程序,如C或C++ 程序的运行机制有很大的区别. 普通程序运行之前必须首先编译成可执行的二进制码或机器码.机器码是与底层的硬件结构相关的,即使书写源代码的时候没有利用 ...

  3. anu - reactIE

    import { options } from "./util"; import { Children } from "./Children"; import ...

  4. 第三篇 makefile的伪目标

    我们来思考一下makefile中的目标究竟是什么?实际上,在默认情况下:    1.make将makefile的目标认为是一个文件:    2.make解释器比较目标文件和依赖文件的新旧关系,决定是否 ...

  5. python opencv —— 背景提取(MOG、KNN)、识别与检测(Haar Cascade)

    注意 opencv 的坐标轴,x 轴向右,和 width 对应,y 轴向下,和 height 对应: 1. MOG2 与 KNN MOG:Mixture of Gaussian import cv2 ...

  6. 单目标优化问题 常用的 测试函数(MATLAB版)

    ############################################### #                测试函数                     # ######## ...

  7. Linux Foundation(笔记)

    /************************************************************* * Linux Foundation * 1. 总结一下Linux的基础内 ...

  8. stm32 定时器TIM时钟步骤

    1)TIM3 时钟使能 . RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIMx, ENABLE); //时钟使能 2) 初始化定时器参数,设置自动重装值, 分频系数, ...

  9. mysql完整版

    mysql: dbs 数据库系统 bdms 数据库管理系统 bda 数据库管理员 db 数据库 dba通过dbms来操作db! 关系型数据库和非关系型数据库 登录mysql mysql -h主机地址 ...

  10. 10款PHP开源网店系统

    在当今经济危机的大环境下,网上购物越来越来吃香,网上开店成本低,快捷方便,出名的电子商务网站有淘宝,拍拍,Ebay或是最新的百度有啊,这些网站都提供开店的机会,如果是想自己搭建购物平台,可以从下面选择 ...