更改Linux控制台(而不是模拟器)的颜色

更改Linux控制台(而不是模拟器)的颜色

我想更改终端使用的默认颜色(特别是在黑色背景下难以阅读的蓝色)。

我怎样才能达到这个结果?我知道这个问题已经被问了很多,但是对于终端仿真器来说,在这种情况下我要求的是没有 X11 或 DE 的普通终端。

答案1

如何在 Linux 控制台上实现着色输出:

通过发送Ansi 转义序列到 tty 驱动程序。你试一试 :

echo -e "\e[31mThis is displayed in red\e[0m"

然后我们可以理解,由运行的程序决定以哪种颜色打印什么。

此转义序列可能是硬编码的:(就像我将上面的行作为某些 shell 脚本的一部分编写一样)在这种情况下,除了更改源代码或摆弄终端能力数据库这是一项繁琐的非便携式工作。
请注意,大多数这些程序通常在命令行上提供一些可选参数,旨在启用/禁用彩色输出。 (例如,参见--color中的选项grep.)

此转义序列可能取决于某些用户定义的环境变量:

  • 大多数 shell 都会尊重PS1用于显示主命令提示符的环境变量,可以包含 ansi 转义序列的变量。
  • 像这样的公用事业ls可以兑现LS_颜色用于根据关联文件的类型对文件名进行着色的环境变量。

此转义序列可能会将用户设置视为某些专用和特定配置文件的一部分。

  • 最常用/已知的vim编辑器将使其输出符合中的定义.vimrc您必须首先编辑的配置文件。
  • 其他实用程序,例如顶部(通过.toprc)也符合某些配置文件,但允许在运行时设置其定义。

所以......每种方式都有自己的方式,请阅读每个特定命令的手册并查看适用的内容。

相关内容