说起Linux终端应该很多玩VPS云主机的站长们应该都不陌生的了,明月是非常的喜欢终端命令行的体验(有可能跟早年间学习和使用DOS有关系,反正就是喜欢,至今不用任何面板,呵呵!),对于Linux下的终端提示符明月其实没有那么多的要求,但是随着使用时间久了以后,看着默认的随机字符的hostname感觉有些厌烦了,所以想着定制一个属于自己或者根据自己需求的终端命令行提示符来。
比如可以设定终端提示符显示当前用户名、hostname、当前目录名称以外以加上当前时间日期甚至以特定的颜色和高亮显示提示符,那么今天就给大家分享一下,有喜欢的站长们可以自己试着定制一下。
PS1
变量简介
PS1
是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。
可以使用 man bash
命令查看bash
手册,找到该变量支持的特殊字符,以及这些特殊字符的意义:
\d
:#代表日期,格式为weekday month date,例如:"Mon Aug 1" \H
:#完整的主机名称。 \h
:#仅取主机的第一个名字,如上例,则为fc4,.linux则被省略 \t
:#显示时间为24小时格式,如:HH:MM:SS \T
:#显示时间为12小时格式 \A
:#显示时间为24小时格式:HH:MM \u
:#当前用户的账号名称 \v
:#BASH的版本信息 \w
:#完整的工作目录名称。家目录会以 ~代替 \W
:#利用basename取得工作目录名称,所以只会列出最后一个目录 \#
:#下达的第几个命令 \$
:#提示字符,如果是root时,提示符为:# ,普通用户则为:$
修改终端提示符
- 查看默认提示符设置
$ echo $PS1
[\u@\h-\A-\W]$
修改默认设置,将如下命令添加到当前登录用户的~/.bashrc文件中,然后使用source使其生效,如果有不明白~/.bashrc文件作用的,可以参考我的这篇文章介绍:【什么是 .bashrc,为什么要编辑 .bashrc?】
$ vim ~/.bashrc
在文件最后添加如下设置
# 修改提示符
export PS1="[\u@\h-\A-\W]\$"
保存退出后在命令行输入source ~/.bashrc
使其设置生效,这时就可以看到命令提示行已经变化了。
颜色设置
在PS1中设置字符序列颜色的格式为:[\e[F;Bm]
其中“F”为字体颜色,编号30~37;“B”为背景色,编号40~47。
- 下面看下颜色表
前景 | 背景 | 颜色 |
---|---|---|
30 | 40 | 黑色 |
31 | 41 | 红色 |
32 | 42 | 绿色 |
33 | 43 | 黄色 |
34 | 44 | 蓝色 |
35 | 45 | 紫红色 |
36 | 46 | 青蓝色 |
37 | 47 | 白色 |
37 | 47 | 白色 |
37 | 47 | 白色 |
- 效果控制代码
代码 | 意义 | |
---|---|---|
0 | OFF | |
1 | 高亮显示 | |
4 | underline | |
5 | 闪烁 | |
7 | 反白显示 | |
8 | 不可见 |
修改提示符颜色示例
$ PS1='\[\e[32m\]#\##\[\e[1;31m\]\u@\[\e[36m\]\h \w]\$\[\e[m\'
说明:
\e[32m
用来设置#\##
的颜色为绿色,#\##
就是显示现在运行的是第几条命令[\e[31m\]
设置\u@
的颜色为红色并高亮显示,如果指定多个数字需要用分号隔开。\u@
就是当前登录的用户名后跟一个@
符号。
\e[36m
设置\h\w
为青蓝色,\h
表示主机名的第一位,如果主机名为centos6.lampbo.org
,那么就显示centos6
;\w
将显示完整的绝对路径。\$
提示字符,如果是root时,提示符为:#
,普通用户则为:$
。
\e[m
使用来关闭颜色设置的。要是你没有这个的话;那么,你的命令提示符,包括你通过命令提示符输出的东西都是和最后一次的颜色设置相同。
为了能够在启动和登录是可以保持刚刚设置的变量,需要将PS1
的设置加入到用户home
目录的.bashrc
文件后。
9 条评论
我还是比较喜欢终端的黑黄颜色。
我倒是一直黑白色搭配的!
居然还有这种高科技,对于我来说,能够用起来就不错了
呵呵,Linux的定制性是超强悍的!
对于我来说就是乱码
哈哈,这叫“正则表达”!
ヾ(≧∇≦*)ゝ学习了,linux真深奥.一堆堆字母看不懂
字母还行,主要是,符号跟字母交杂在一起,所以看起来有点乱
哈哈,看着乱,其实都是强大的体现!