如何直接在终端中更改屏幕单元的颜色?

时间:2018-06-27 05:13:36

标签: linux bash terminal

我知道我可以使用\e[31;41m之类的转义序列来更改后面输出到终端的颜色。但是如何直接更改屏幕单元的颜色?在以下两种情况下,我需要它:

  • 我想返回(通过光标移动的转义序列)并将屏幕上已经存在的一个字符染色。

  • 我想制作一个仅彩色的屏幕单元,并希望其中不包含任何字符。

我知道在过去的0xb8000中我可以做到这一点,但是在* nix终端中我找不到方法。

1 个答案:

答案 0 :(得分:0)

ANSI终端的工作水平要低得多,这(除其他因素外)使它们可以在网络上工作。通常,您想在输出流的 top 上运行一个缓冲区,这样您就可以记住该单元格中的哪个字符,并用新的颜色重新写出来。

还要注意,有一个VT400代码DECCARA,它允许更改 non -颜色属性(粗体等),但并未得到广泛支持。只需使用缓冲区即可。