Bash tput setf的颜色代码
我正在寻找一个包含此内容的文件Bash tput setf的颜色代码,bash,shell,Bash,Shell,我正在寻找一个包含此内容的文件 export fgBlack8="$(tput setf 0)"; export fgRed8="$(tput setf 1)"; export fgGreen8="$(tput setf 2)"; export fgYellow8="$(tput setf 3)"; export fgBlue8="$(tput setf 4)"; export fgMagenta8="$(tput setf 5)"; export fgCyan8="$(tput setf 6)
export fgBlack8="$(tput setf 0)";
export fgRed8="$(tput setf 1)";
export fgGreen8="$(tput setf 2)";
export fgYellow8="$(tput setf 3)";
export fgBlue8="$(tput setf 4)";
export fgMagenta8="$(tput setf 5)";
export fgCyan8="$(tput setf 6)";
export fgWhite8="$(tput setf 7)";
export bgBlack8="$(tput setb 0)";
export bgRed8="$(tput setb 1)";
export bgGreen8="$(tput setb 2)";
export bgYellow8="$(tput setb 3)";
export bgBlue8="$(tput setb 4)";
export bgMagenta8="$(tput setb 5)";
export bgCyan8="$(tput setb 6)";
export bgWhite8="$(tput setb 7)";
根据这个链接:
然后,当用一些像这样的命令测试颜色时
echo -e "${fgBlack8}fgBlack8"
echo -e "${fgRed8}fgRed8"
echo -e "${fgGreen8}fgGreen8"
echo -e "${fgYellow8}fgYellow8"
echo -e "${fgBlue8}fgBlue8"
echo -e "${fgMagenta8}fgMagenta8"
echo -e "${fgCyan8}fgCyan8"
echo -e "${fgWhite8}fgWhite8"
我收到以下输出:
红色显示为蓝色,黄色显示为青色,反之亦然。网站上的代码是错误的还是我用错了,并意外地产生了正确的颜色映射?如果您使用的是
tput
命令,那么从
$ man tput
从哪看也会带你去
$ man terminfo
你会发现
setaf/setab和setf/setb功能采用单个数字argu-
每一个都是。
终端硬件是
可以随意映射这些,但RGB值表示正常loca-
颜色空间中的颜色
Color #define Value RGB
black COLOR_BLACK 0 0, 0, 0
red COLOR_RED 1 max,0,0
green COLOR_GREEN 2 0,max,0
yellow COLOR_YELLOW 3 max,max,0
blue COLOR_BLUE 4 0,0,max
magenta COLOR_MAGENTA 5 max,0,max
cyan COLOR_CYAN 6 0,max,max
white COLOR_WHITE 7 max,max,max
setf/setb的参数值历史上对应于不同的
映射,即
Color #define Value RGB
black COLOR_BLACK 0 0, 0, 0
blue COLOR_BLUE 1 0,0,max
green COLOR_GREEN 2 0,max,0
cyan COLOR_CYAN 3 0,max,max
red COLOR_RED 4 max,0,0
magenta COLOR_MAGENTA 5 max,0,max
yellow COLOR_YELLOW 6 max,max,0
white COLOR_WHITE 7 max,max,max
您似乎混淆了
setaf/setab
颜色和setf/setb
颜色。寻找details@DavidC.Rankin这很有帮助,谢谢你。我检查了ManBash,因为我不知道该看哪一页,而且(惊喜)什么也没找到,因此使用了这篇草率的文章。我只记得在过去的某个地方,terminfo
是一个值得去的地方。祝你的脚本编写工作好运。