分类: LINUX
2008-01-27 19:07:19
除了可读字符以外,printf还可以打印出八进制、十六进制的不可读字符。我们让printf打印出彩色文本:# clear;printf '\x1b\x5b12;25f\x1b\x5b1;31;40m\tMerry Christmas\n\x1b\x5b0;37;40m'
在十六进制码
12;25f中, 12是行数, 25是列数。与echo比较一下:
# echo -e '\033[1;32mCheers\033[0m'echo的颜色表示法遵循ANSI转义序列(ANSI escape sequences)的规则:
转义序列分为键与颜色两种,基本规则: 前面加上\033[ 或者 \e[ (这里的e大写或小写),前者是最早的,带e的是bash后来的版本加的。
颜色表示法:
一、以4开头的背景色;以3开头的前景色m
二、或者不要背景色:
0;前景色m
1;前景色m
0和1这两种有略微的差别。口诀:
0黑 1红 2绿 3棕 4蓝 5紫 6青 7灰