我正在写一个bash脚本。我想通过echo
命令将彩色字符串打印到终端,并根据终端的背景颜色更改字符串的颜色。
我目前只是打印白色字符串,如下所示:echo -e "$(tput setaf 7)my string here"
。
如果终端背景颜色也是白色,有没有办法以不同的颜色打印字符串?我不想自己设置背景颜色以确保我的字符串可见。
提前致谢!
答案 0 :(得分:1)
据我所知,无法获取终端的背景颜色。就像John B在评论中所说,这也取决于你正在使用的终端。
如果要强制使用特定的背景颜色,可以使用此命令tput setab #
,其中#是0到7之间的数字。然后,您可以使用参数{{1}将背景颜色重置为原始颜色像这样:op
此链接也可能有所帮助(有关颜色处理的颜色和更多文档):http://linux.about.com/library/cmd/blcmdl5_terminfo.htm