Linux终端设置

在本文中我以 Bash shell 为例。因为在不同的终端里的转义序列不完全相同, 所以在本文中我使用的是 ANSI 终端。 

  shell 彩色配置出现在 bash 的个人配置文件 ~/.bashrc 或者是全局配置文件 /etc/bashrc 里面。 可以通过bashrc 里面的 PS1 变量来设置提示符的外观。

一般默认的情况下.bashrc里面应该是:

                 ~/.bashrc

                  export    PS1=' \u@\h:\w\$ '

                  上面的意思是:用户@主机:当前目录 $

                   -->这也是大家都非常熟悉的shell提示符 。

例子:

代码:

export PS1="\[\033[1;32;40m[\033[0;32;40m\u@\h:\033[1;35;40m\w\033[1;32;40m]\033[1;31;40m\$\033[1;32;40m \]"

最外边的"\[    \]"是为了把转义序列的字符串括起来,防止转义序列的文本显示在 shell 里占用太多的空间。

\033 声明了转义序列的开始,然后是 [ 开始定义颜色。 后面的 0 定义了默认的字体宽度,接着的中间的数字定义字符颜色。最后面的数字定义了字符背景色。字母m是定义本身所必须的,字母m后面的字符就是你想改变的字符了。

 可选颜色:红色、绿色、黄色、蓝色、洋红、青色和白色。 他们对应的颜色代码是:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)。

用同样色方法设置背景色,不过要把第一个数字“3”替换成“4”, 例如 40、41、42、43、44、45、46、47。

比如上面我的定义中: 最后显示的结果是在$号之前的字符全部用一个浅绿色的中括弧扩起来。$字符 显示为红色。后面的输入显示为高亮浅绿色。在括弧里面,用户名@主机显示为深绿色,路径显示为洋红。

用代码解释:

Ps1 ="\[ -------------> 最外面的括弧

                 \033[1;32;40m[

           ----> 定义最右边的" [ " ;

        1:字体宽度,好像有加亮功能.

        32:字符颜色。32表示绿色。

        40:背景色,40表示黑色。

               \033[0;32;40m\u@\h:

        --------->定义右边的 \u@\h:  这几个字符颜色。

             0: 默认字体宽度。

            32:字符颜色。绿色。

            40:  背景颜色。黑色。

               \033[1;35;40m\w

        ---------> 定义右边的 \w  (路径颜色) 。

            1:字符宽度。加亮。

           35:字符颜色。洋红。

           40:背景色。黑色。

                     \033[1;32;40m]

      ---------> 定义右边的  ]  字符。跟前面的   [   字符使用同一效果。

                     \033[1;31;40m\$

      ---------> 定义了  $  字符 为红色。转义字符,所以前面加了 \ .

          颜色都跟前面差不多。相信大家都发现规律了。

                      \033[1;32;40m

      ----------> 这个定义了你在命令行要输入命令显示的颜色。

                       \]"

     -----------> 字符串结束括弧。

刚才提到了,在第一个转义序列后面的“0”是提示符的文本的默认颜色设置。 对于文本属性来说,这些值是有意义的:0、1、22、4、24、5、25、7、27, 分别表示:默认值、粗体、非粗体、下划线、非下划线、闪烁、非闪烁、 反显、非反显。

#!/bin/sh

############################################################
# Nico Golde <nico(at)ngolde.de> Homepage: http://www.ngolde.de
# Last change: Mon Feb 16 16:24:41 CET 2004
############################################################

for attr in 0 1 4 5 7 ; do
    echo "----------------------------------------------------------------"
    printf "ESC[%s;Foreground;Background - \n" $attr
    for fore in 30 31 32 33 34 35 36 37; do
        for back in 40 41 42 43 44 45 46 47; do
            printf '\033[%s;%s;%sm %02s;%02s  ' $attr $fore $back $fore $back
        done
    printf '\n'
    done
    printf '\033[0m'
done

以上为各种配色方案。



转载于:https://my.oschina.net/qihh/blog/86765

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值