各平台各语言的终端颜色控制(可用于log)
来源:互联网 发布:java 打印map内容 编辑:程序博客网 时间:2024/05/20 00:37
1. 简介
在使用putty、secureCRT、XShell等终端仿真器连接linux系统时,vim等工具的输出都含有各种颜色,这些颜色的输出大大地增强了文本的可读性。
通常我们可以使用echo命令加-e选项输出各种颜色的文本,例如:echo -e "\033[31mRed Text\033[0m"
,可以输出红色的字体“Red Text”。其中:”\033[31m”和”\033[0m”是ANSI转义序列(ANSI escape code/sequence),它控制文本输出的格式、颜色等。
2. 转义序列及参数
键盘左上角Esc键对应的ascii码为27,写为八进制是 033, 十六进制是 x1b,所以上面的\033
和\x1b
,\e
效果一样
参数的话分为0-8,30-37,40-47,不同参数之间用分号分开
35其实是 magenta, 36是cyan
写完参数用m
表示转义结束
3. 不同平台语言
python(linux和window都可以)
a.pythonprint("\033[1;31m hello \033[0m")
python a.python
C或C++ (linux)
#include <stdio.h>printf("\033[1;31m hello \033[0m")#include <iostream>std::cout<<"\033[1;31m"<<" hello "<<"\033[0m";
shell (linux)
echo -e "\033[1;31m hello \033[0m"
windows命令提示符CMD
命令提示符(CMD)下调整整屏颜色输出可使用color命令,格式为:color BF
其中B和F表示颜色属性(B背景色,F前景色),属性值为一个十六进制数字(0-F)。各属性值与颜色对应的关系如下:
例如,要设置命令提示符窗口“背景为黑(0),前景为白(7)”可执行color 07
。win32 console
由于win32控制台不支持ANSI转义序列,因此要让win32控制台输出颜色文本相对复杂一些
#include<windows.h>WORD f_color=FOREGROUND_RED;HANDLE hdl = GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleTextAttribute(hdl, f_color | FOREGROUND_INTENSITY)printf("hello");
更多请参考:Console Screen Buffers
- 各平台各语言的终端颜色控制(可用于log)
- C语言控制Linux终端的颜色输出
- 可用于Win32平台的flex/bison
- Linux下的虚拟终端(可用于在本机上模拟串口进行调试)
- linux 终端颜色控制
- 终端字符颜色、样式控制
- 一起talk C栗子吧(第一百六十七回:C语言实例--控制终端字符颜色)
- 相邻颜色搭配,可用于表格设计
- 【物联网安全】可用于物联网终端的轻量级加密算法研究
- Linux终端程序用c语言实现改变输出的字的颜色 (转)
- Linux终端程序用c语言实现改变输出的字的颜色 (转)
- 再谈将C++语言源码转成html的方法(vim实现,可用于java,perl,python等等多种语言)
- 大平台可用的框架全文(控制隐藏)
- C# 中,ListView的自定义显示,可用于显示不同的颜色和字体等
- android中的颜色渐变动画---可用于导航页的效果
- Cocos2dx图片像素颜色值获取,可用于判断是否是图片的透明区域
- Boostrap常用颜色的class,可用于文字和按钮等
- 终端的字符颜色
- 数据结构---最小生成树
- 初学C
- Laravel 5如何安全删除migration文件
- scrapy:xpath string(.)非常注意问题
- 《天下无谋》读后感 --- 度心术卷2御心篇
- 各平台各语言的终端颜色控制(可用于log)
- Qt5.8.0+VS2015方式下的静态编译解决方案
- Docker入门指南
- NMAP笔记
- android-bitmap与string互转
- 撸阿(Lua)的学习过程
- 结构模式->装饰模式
- Maven学习总结(37)——利用GitHub或阿里云OSS对象存储、又拍云、七牛云存储等搭建个人Maven仓库
- 110-最小路径和