欢迎来到资源库(www.zyku.net)

Linux

当前位置:首页 > 服务器教程 > Linux > 终端命令行

Linux系统修改终端命令行主机名和用户名颜色的方法

时间:2018-10-29|栏目:Linux|点击:|我要投稿

由于Linux终端命令行全部为白色,会经常导致命令与输出内容难以分辨。于是上网找到修改linux终端命令行颜色的方法,发现通过定义PS1环境变量即可实现,下面我以root用户身份进行操作。

1、了解PS1

PS1是Linux终端用户的一个环境变量,用来定义命令行提示符的参数。

在终端输入命令:

echo $PS1

可得到当前PS1的定义值:

PS1='[\u@\h \W]\$ '

Linux系统修改终端命令行主机名和用户名颜色的方法

PS1的常用参数以及含义:

\d :代表日期,格式为weekday month date,例如:"Mon Aug 1"
\H :完整的主机名称
\h :仅取主机名中的第一个名字
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称
\W :利用basename取得工作目录名称,只显示最后一个目录名
\# :下达的第几个命令
\$ :提示字符,如果是root用户,提示符为 # ,普通用户则为 $

所以linux默认的命令行提示信息的格式:

PS1='[\u@\h \W]\$ '
[当前用户的账号名称@主机名的第一个名字 工作目录的最后一层目录名]#

2、颜色设置参数

在PS1中设置字符颜色的格式为:\[\e[F;Bm\]........\[\e[0m\],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,\[\e[0m\]作为颜色设定的结束。

颜色对照表:

F    B
30  40 黑色
31  41 红色
32  42 绿色
33  43 黄色
34  44 蓝色
35  45 紫红色
36  46 青蓝色
37  47 白色

只需将对应数字套入设置格式中即可。

比如要设置命令行的格式为绿字黑底(\[\e[32;40m\]),显示当前用户的账号名称(\u)、主机的第一个名字(\h)、完整的当前工作目录名称(\w)、24小时格式时间(\t),可以直接在命令行键入如下命令:

PS1='[\[\e[32;40m\]\u@\h \w \t]$ \[\e[0m\]'

经过多次测试后,最终确定了一个适合我自己的格式:

PS1='\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[35;40m\]\W\[\e[0m\]]\$'

但注意这样的设置只是临时性的。

3、修改.bashrc文件,永久保存命令行样式

上面的设置的作用域只有当前终端的登录有效,关闭终端或退出登录即刻失效。要想永久性的保存设置,需要修改.bashrc配置文件。

键入命令:

cd
ls -la

现在可以看到.bashrc这个文件。

编辑.bashrc:

vim .bashrc

在最后面加入这一行:

PS1='\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[35;40m\]\W\[\e[0m\]]\$'

保存退出。

重新加载bash配置文件:

source .bashrc

即可立即并永久生效了。

效果如下:

Linux系统修改终端命令行主机名和用户名颜色的方法

(资源库 www.zyku.net)

关于我们 | 版权申明 | 寻求合作 |

重要申明:本站所有的文章、图片、评论等内容,均由网友发表或上传并维护或收集自网络,仅供个人学习交流使用,版权归原作者所有。

如有侵犯您的版权,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:95148658 | 邮箱:mb8#qq.com(#换成@)

苏ICP备2020066115号-1

本网站由提供CDN加速/云存储服务