日期:2014-05-16  浏览次数:20593 次

Linux设置命令提示符的操作
在设置之前有必要知道一些基础的信息。
1.环境变量:PS1(数字1),具体的Linux版本不同,他的bash也不尽相同,可以man bash一下,找到如下的信息。


此时我们就知道应该在那个文件中加入对应的语句。

以上图片中的内容看出,如果要使得所有的用户都生效的话,就在/etc/profile文件的最后一行加入如下配置,如果是针对某个用户的话,以我的环境举例,此时就要找到用户家目录下的.bash_profile文件进行配置(bash不同,配置的文件也不同,一般也会在.profile中配置,这样根据你的操作系统它具体有那个文件了)。如果两个都配置,取用户的个性配置,公共的配置会被覆盖。

一般会有三种设置(在/etc/profile文件的最后加入以下语句针对所有的用户都起作用):
(1)命令行提示符完全显示完整的工作目录名称
    export PS1=’[\u@\h $PWD]\$ ‘
(2)命令行提示符只列出最后一个目录
    export PS1=’[\u@\h \W]\$ ‘
(3)命令行提示符显示完整工作目录,当前用户目录会以 ~代替
    export PS1=’[\u@\h \w]\$ ‘

修改完成后,执行:  source /etc/profile  或者. /etc/profile(.后面有个空格)两者都可以使配置生效即可。
命令释义:

\u 显示当前用户账号
\h 显示当前主机名
\W 只显示当前路径最后一个目录
\w 显示当前绝对路径(当前用户目录会以 ~代替)
$PWD 显示当前全路径
\$ 显示命令行’$'或者’#'符号
\# :下达的第几个命令
\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\v :BASH的版本信息

有的时候为了知道你当前执行的是第几个命令,也可以加入\#,例如:
export PS1=’[\u@\h \w\#]\$ ‘

其实以上都可以随意组合的,再举例我喜欢在没执行一个命令之前,提示今天星期几,几月几号,bash版本号,当前时间等信息
我就可以在/etc/profile的文件的最后加入
export PS1='[\u@\h \w\# \v \d \t]'保存之后使其生效就可以了。