debian系统。普通用户有颜色。ls也是有颜色的。切换到root用户没有颜色。只能自己修改了
方法是参照普通用户的~/.bashrc文件改。修改/etc/bash.bashrc,并不是/etc/profile。最终结果修改如下:
# set a fancy prompt (non-color, overwrite the one in /etc/profile) #PS1='${debian_chroot:+($debian_chroot)}u@h:W$ ' case "$TERM" in xterm-color|*-256color) color_prompt=yes;; esac if [ "$color_prompt" = yes ]; then PS1='${debian_chroot:+($debian_chroot)}[ 33[01;32m]u@h[ 33[00m]:[ 33[01;34m]W[ 33[00m]$ ' else PS1='${debian_chroot:+($debian_chroot)}u@h:W$ ' fi unset color_prompt force_color_prompt alias ls='ls --color=auto'
贴一下:PS1环境变量
要修改linux终端命令行颜色,我们需要用到PS1,PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。在终端输入命令:#set,即可在输出中找到关于PS1的定义如下:
PS1='[u@h W]$ '
PS1的定义中个常用的参数的含义如下:
d :#代表日期,格式为weekday month date,例如:"Mon Aug 1"
H :#完整的主机名称
h :#仅取主机的第一个名字
:#显示时间为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。只表示前景色为[e[Fm],颜色表如下:
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 ]$ '