我要投稿
  • 您当前的位置:365bet官方 -> 技术教程 -> 服务器网络 -> 服务器教程 -> 域名服务器教程 -> 教程内容
  • [ 收藏本页教程 ]
  • ANSI控制码的说明域名服务器教程

    教程作者:佚名    教程来源:不详   教程栏目:域名服务器教程    收藏本页
                  摘要:ANSI控制码的说明 例如:
    echo -ne "[32m" 可以将字符的显示颜色改为绿色
    echo -ne "[3;1H" 可以将光标移到第3行第1列处
    具体的摘抄一些如下:
    [0m 关闭所有属性
    [1m 设置高亮度
    [4m 下划线
    [5m 闪烁
    [7m 反显
    [8m 消隐
    [30m -- [37m 设置前景色
    [40m -- [47m 设置背景色
    [nA 光标上移n行
    [nB 光标下移n行
    [nC 光标右移n行
    [nD 光标左移n行
    [y;xH设置光标位置
    [2J 清屏
    [K 清除从光标到行尾的内容
    [s 保存光标位置
    [u 恢复光标位置
    [?25l 隐藏光标
    [?25h 显示光标

    [code]
    Linux 终端机下的彩色显示
    (2001-04-27 15:20:29)
    作者: Thorbjørn Ravn Andersen, ravn@dit.ou.dk
    译者: Chou-Kai Wang, stylon@ms2.hinet.net
    v1.4, 7 August 1997 


    --------------------------------------------------------------------------------
    虽然大部份的 Linux 发行版本都附有一个用来把目录的内容列出来,而且可以利用彩色来增强输出在视觉上的效果的'ls'指令,不过要把他设定的合你意却不是件容易的事。这份文件说明了设定一些已经内附在你的 Linux 发行版本的软体,来达到这个目地的好几种不同的方法,还有在那□可以找到一些在大部份版本的 Unix □都会用到,但是却常常不被附在 Slackware 或 RedHat Linux □的软体。这份文件的 HTML 版本也可以在我的原始档案这□ http://www.mip.ou.dk/~ravn/colour-ls 找的到。 
    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------

    1. 简介
    这些年来彩色的显示器已经相当普遍,使用者也开始使用一些以彩色来表示例如:程式语言□的保留字,或是拼错的字,来给使用者一些视觉上的回馈。 

    自从 Linux 的文字模式控制台支援彩色後,原来的 GNU ls 也很快的被修改成支援输出彩色的讯息而且被附在 Slackware 2.0 版□。这些改良原来版本的缀补档案已经被整合到标准版的 GNU ls 里,现在也应该是所有新的 Linux 发行版本的一部份了。 

    现在这版本的文件是把最初的版本改写了许多部份後更新而来的,包括了一些关於 xterm 和 如何利用缀补档来更新核心的资讯。 

    这份文件里的资讯都在 Redhat 4.1 □验证过,而且主要是在Slackware 2.0.2 版及核心版本 1.1.54 的环境□搜集而来的。核心的缀补档的资讯是在 slackware 2.2.0,1.2.13 版的核心,并且以 tcsh 为预设的 shell的环境□取得的,而後来也在 2.0.27 的核心□验证过。如果你使用其它的设定或是 unix 版本,我会很感激你告诉我你的作业系统及版本,还有它是否支援彩色的显示。 



    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------

    2. 快速入门:给没有那麽多耐心的读者
    如果你有个 新版的 Linux,对你使用者目录下的这些档案作这些修改,下次你登入的时候就会生效了。 


    ~/.bashrc:
        alias ls="ls ‐‐color"

    ~/.cshrc:
        alias ls 'ls ‐‐color'
        

    这样就好啦! 
    你也许还会想要作:``eval `dircolors $HOME/.colourrc`'',来设定你自己想要的颜色。这个档案可以用 ``dircolors -p >$HOME/.colourrc'' 来制造出来,而且□面有许多的注解方便你更改设定。 



    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------

    3. 这样就好了吗?

    首先你需要知道你使用的 ls 是不是可以适当的处理彩色输出。在 Linux 的文字模式控制台试试看这个指令(在 xterm □也可以): 


    % ls ‐‐color

    (这□的 % 是 shell 的提示符号): 

    如果你看到了表示你的 ls 不能接受这个选项的错误讯息,那你应该安装新版本的 GNU fileutils 软体。如果你使用的发行版本没有提供新的升级软体,那麽就从 GNU 的映射站台取得这个软体并且直接从原始码安装。 

    如果你并没有看到错误讯息,那麽你使用的 ls 便可以接受这个选项。但很不幸的,有一些在 Slackware (其它的发行版本也有可能) □附的早期版本是有臭□的。在 Redhat 4.1 □面附的 3.13 版的 ls 就没有问题。 


    % ls ‐‐version
    ls - GNU fileutils-3.13

    如果你在 Linux 的文字模式终端机□执行 ``ls ‐‐ color'',那麽它的输出应该依照系统的预设值而有适当的彩色,而且你现在可以开始决定是不是需要改变任何的设定。 

    如果你在 xterm □执行上面的过程,也许你还是没办法看到输出变成彩色。就跟 ls 一样,原来的 xterm 并不支援应用程式的彩色输出,而较新的版本有支援。如果你的 xterm 不支援彩色,那麽请参考这个文件的结尾拿到较新版本的 xterm,同时你也只好切换到文字模式并且继续下面的步骤。 



    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------

    4. 有那些颜色可以选择呢?
    下面的 shell 命令稿(感谢许多把 bash 的版本寄给我的人)显示出现在使用的主控台能够支援的各种颜色组合。如果没有颜色出现,那麽你的主控台就不支援 ANSI 的颜色选择。 


    #!/bin/bash
    # 显示 ANSI 的彩色
    #
    esc="3["
    echo -n " _ _ _ _ _40 _ _ _ 41_ _ _ _42 _ _ _ 43" 
    echo "_ _ _ 44_ _ _ _45 _ _ _ 46_ _ _ _47 _"
    for fore in 30 31 32 33 34 35 36 37; do
      line1="$fore  " 
      line2="    "
      for back in 40 41 42 43 44 45 46 47; do
        line1="$$$;$m Normal  $0m"
        line2="$$$;$;1m Bold    $0m"
      done
      echo -e "$line1\n$line2"
    done

    前景的颜色号码是在左边那一排,背景的则是在上方。如果你要粗体的字元和高亮度就在参数□加一个 "1",所以前景是白色而背景是蓝色就成了 "37;44;1"。整个的 ANSI 颜色选择序列就是 

    ESC [ 3 7 ; 4 4 ; 1 m

    。 
    注: 背景不可以是高亮度,所以黄色(高亮度的棕色)只能用来作前景。这是硬体上的限制。 


    颜色代码:
            0 - 黑色     4 - 蓝色           3# 是背景颜色
            1 - 红色     5 - 粉红色         4# 是前景颜色
            2 - 绿色     6 - 青色
            3 - 黄色     7 - 白色           ;1 是粗体和高亮度



    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------

    5. 如何设定 ls 的彩色输出

    如果你想要修改 ls 内定的标准颜色,你需要用下面的指令在你的 HOME 目录下制造这一个档案 

     cd ; dircolors -p > .coloursrc 

    在你编辑完这个注解的很详细的档案以後,你必需要把它读进你的环境变数 LS_COLORS □,通常都是这样作的 

    eval `dircolors .colourrc`

    然後你要把前面这一行放进你的 .bashrc 或 .cshrc 或 .tcshrc (依照你使用的 shell 而定)□。更详细的用法请看 dircolors(1) 的使用说明。 



    --------------------------------------------------------------------------------
    --------------------------------------------------------------------------------

    6. 如何改变系统的预设值: 前景白色而背景是黑色


    你需要告诉你的终端机驱动程式你想要的另一个预设值。要如何作并没有一个标准的方法,不过如果你是用 Linux 的话,你有 setterm 这个程式可以用。 


    "setterm" 使用终端机资料库□的资料来

    我要投稿   -   广告合作   -   关于本站   -   友情连接   -   网站地图   -   联系我们   -   版权声明   -   设为首页   -   加入收藏   -   网站留言
    Copyright © 2009 - 20012 www.www.ct131.com All Rights Reserved.365bet官方 版权所有