ubuntu12.04设置PS1提示符

root用户在/root目录下
# cat .bashrc
PS1='\u:\W\$ '

普通用户在/home/<user>目录下编辑两个文件:.bashrc和.bash_profile,缺一不可
$ cat .bashrc
PS1='\u:\W\$ '

$ cat .bash_profile
exec env -i PS1='\u:\W\$ '

-i: 先清除所有环境变量
\u: 列出当前的帐号
\W: 只列出最后一个目录
\w: 列出完整路径(Ubuntu12.04默认为\w,我嫌这个太长了,故改为\W,效果与CentOS一致)
注意:设置完后通过命令source .bashrc以及source .bash_profile使设置生效。

两个文件都需要PS1字样,否则显示回默认状态(即删除这两个文件后,提示符表现出来的格式)。当两个文件的PS1字样的格式不一样时,以.bash_profile中的为准,比如:
$ cat .bashrc
PS1='\u:\w\$ ' #显示完整路径

$ cat .bash_profile
exec env -i PS1='\u:\W\$ ' #显示最后目录

PS1提示符只显示最后目录。

===================================
用户登录的时候,初始shell通常是一个登陆shell(login shell),它会首先读取宿主系统的 /etc/profile 文件(可能包含一些设置和环境变量),然后继续读取.bash_profile文件来完成登录初始化。另一个shell实例是非登陆shell(non-login shell),它不读取/etc/profile或 .bash_profile文件,而是读取.bashrc 文件。

==================================
来自:http://blog.sina.com.cn/s/blog_4b065e2a01013dp3.html
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.

/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.(每个用户都有一个.bashrc文件,在用户目录下)

~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 

另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
 
~/.bash_profile 是交互式、login 方式进入 bash 运行的
~/.bashrc 是交互式 non-login 方式进入 bash 运行的
通常二者设置大致相同,所以通常前者会调用后者。

 

 

转载自:http://blog.sina.com.cn/s/blog_6ccfa4f301016ka9.html

posted @ 2016-07-27 10:58  烟消云散....  阅读(546)  评论(0编辑  收藏  举报