要想修改终端的颜色,可使用修改PS1环境变量的方式,也能够经过命令setterm来进行设置。html
1、PS1linux
转自:修改linux终端命令行颜色shell
1.PS1bash
要修改linux终端命令行颜色,咱们须要用到PS1,PS1是Linux终端用户的一个环境变量,用来讲明命令行提示符的设置。在终端输入命令:#set,便可在输出中找到关于PS1的定义以下:post
PS1='[\u@\h \W]\$ '字体
PS1的定义中个经常使用的参数的含义以下:url
\d :#表明日期,格式为weekday month date,例如:"Mon Aug 1" spa
\H :#完整的主机名称 命令行
\h :#仅取主机的第一个名字 htm
\t :#显示时间为24小时格式,如:HH:MM:SS
\T :#显示时间为12小时格式
\A :#显示时间为24小时格式:HH:MM
\u :#当前用户的帐号名称
\v :#BASH的版本信息
\w :#完整的工做目录名称
\W :#利用basename取得工做目录名称,因此只会列出最后一个目录
\# :#下达的第几个命令
\$ :#提示字符,若是是root时,提示符为:# ,普通用户则为:$
由此,咱们可知linux默认的命令行提示信息为:[当前用户的帐号名称@主机的第一个名字 工做目录的最后一项]#
2.颜色的设置
在PS1中设置字符颜色的格式为:\[\e[F;Bm\],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47。颜色表以下:
F B
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
根据颜色表,套用入字符颜色设置格式中,就能够对linux终端命令行颜色进行个性化设置了。好比要设置命令行的格式为绿字黑底,显示当前用户的帐号名称、主机的第一个名字、完整的当前工做目录名称、24小时格式时间,就可使用以下的命令:
#PS1='[\[\e[32;40m\]\u@\h \w \t]$ '
3.修改.bashrc文件(也能够经过修改\etc\profile文件来实现)
经过上面的设置只能改变当前终端的命令行格式,关闭这个终端,在从新打开的一个终端中命令行格式又会恢复到默认的形式。想要永久性的改变终端命令行格式,须要修改.bashrc文件。
使用命令:#cd /
#ls -l -a
就能看到.bashrc这个文件。使用命令
#gedit .bashrc
在.bashrc文件中加入
PS1="[\[\e[30;47m\]\u@\h \W \t]$"
这条语句,而后保存,就能够永久性的改变终端命令行格式了。
修改完成后,必定要使用source 命令从新加载配置文件
二、经过setterm方式设置
能够经过setterm -foreground 设置前景色
setterm -background 设置背景色
可是每次都要设置比较麻烦。
为了使用方便,编写了一个shell脚本将两行命令放到termColor.sh文件中。
每次执行sh termColor.sh命令就能够修改前景色和背景色。可是每次执行了ls命令后,颜色又变成了没有设置时的样子。有些无奈了,仍是用第一种方式吧。
另外,须要说明的是,每次都须要使用sh来执行脚本。使用ls -l命令查看,这个termColor文件没有可执行的权限(可执行的位置-),说明不是可执行文件。使用chmod修改其为可执行文件后,执行运行./termColor.sh就能够执行了。