zoukankan      html  css  js  c++  java
  • ANSI设备驱动器

    这个是在《C/C++程序员实用大全·精华版:C/C++最佳编程指南》一书中提到了"ANSI设备驱动器"。

    在shell编程中也是类似的

    要是通过彩色化提示符来增加个性化,就要用到转义序列。 转义序列就是一个让 shell 执行一个特殊步骤的控制指令。 转义序列通常都是以 ESC 开头(这也是它的命名原因)。 在 shell 里表示为 ^[。这种表示法需要一点时间去适应, 也可以用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33)。要直接在 shell 里面输入转义序列我们需要先按 ctrl-v:CTRL-v ESC。

    转义序列

    功能

    示例

    Esc[x;yH

    把光标放置在x行y列上

    Esc[10;25H

    Esc[xA

    上移光标x行

    Esc[1A

    Esc[xB

    下移光标x行

    Esc[2B

    Esc[yC

    右移光标y列

    Esc[10C

    Esc[yD

    左移光标y列

    Esc[10D

    Esc[S

    存储光标当前的位置

    Esc[S

    Esc[U

    恢复光标位置

    Esc[U

    Esc[2J

    清屏,将光标移至起始位置

    Esc[2J

    Esc[K

    清除至行尾

    Esc[K

     

    C 语言示例

    用绿色打印"Hello Word":

    #include <stdio.h>

    int main(void){

    const char *const green = "\033[0;40;32m";

    const char *const normal = "\033[0m";

    printf("%sHello World%s\n", green, normal);

    return 0;

    }

     

    另外一个有用的转义序列是 printf("\033[2J"),它和 system(clear) 完成的功能一样。但是可以不需要头文件 unistd.h。

    使用printf("\033[1K") 可以删除一行。

  • 相关阅读:
    express如何使用cors插件、body-parser插件
    如何让xshell关闭后依然运行node项目
    nuxt命令和部署
    Python—函数的名称空间
    Python—生成器
    Python—闭包
    Python入门-字符串常用方法
    Python入门-函数
    Python入门-文件操作
    Python入门-三级菜单
  • 原文地址:https://www.cnblogs.com/xkfz007/p/2420175.html
Copyright © 2011-2022 走看看