例如,如果我想要加粗绿色的前缀,则可以这样做Green=$(tput bold; tput setaf 2)
。这会将$ Green设置为“ \ E [1m \ E [32m”“。但是在Ansi终端上,它很容易成为“ \ E [1; 32m”。
可以用tput完成此操作,还是我要求太多?
不,tput不会执行此操作(通常),因为您可能仅使用预定义/标准终端功能,而没有这些组合。
使用ncurses,您可以使用用户定义的功能定义自己的终端描述,而tput可以使用该描述。
像这样的东西会结合颜色:
infocmp -x >foo
printf '\tfgbg=\\E[3%p1%;4%p2%dm,\n' >>foo
sudo tic -x foo
然后(该示例适用于8色)
tput fgbg 4 0
将前景设置为蓝色,背景设置为黑色。但是,有很多可能性。使用预定义功能涉及的工作量较小。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句