我知道如何通过首选项更改字体颜色,但它会更改所有文本的颜色,如下所示:
我想要的是更像这样的东西:
有小费吗?
答案1
许多 UNIX 终端可以识别一些(但通常不是全部)Ansi 转义代码
因此,您可以使用这些(适用于您的终端的)来根据需要更改显示。
一个非常简单的例子(我使用 printf 因为它可以跨许多不同的(和旧的!)shell 移植):
export _norm_="$(printf '\033[0m')" #reset "everything" to normal
export _bold_="$(printf '\033[1m')" #set bold
export _rred_="$(printf '\033[0;1;5;31m')" #"reverse red"
echo "This is an ${_rred_}ERROR${_norm_} and this is ${_bold_}A WARNING${_norm_}"
请注意,这些可能会有所不同,具体取决于终端类型 (TERM=...) 以及连接到该计算机的程序(最值得注意的是:当使用某些 Windows 终端(例如 F-secure)而不是例如腻子..)
换句话说:这并不完全可移植,并且取决于很多因素。但“大胆”总是有效的。 “反向”更容易依赖于终端。
tput
也更好使用,因为它会小心地找出适合您的终端的正确顺序,但它并不总是可用(例如,在旧机器上不可用)
答案2
正如Olivier Dulac所说,你需要ANSI转义码,请参考Bash 提示:颜色和格式
了解详情。
答案3
sudo dpkg-reconfigure console-setup