如何在 Git Bash 中输出 256 位甚至 24 位颜色?

Mic*_*out 10 bash command-line colors windows-10

我在 Windows 10 创意者更新版本 15063 上运行 Git Bash。在为 Windows 安装 Git 期间,我选择使用 Windows 的默认控制台窗口而不是 MinTTY。

默认控制台窗口表示 cmd.exe,也称为命令提示符或命令处理器。由于 Windows 10 cmd.exe 的 build 14931 支持 24-bit color

如何在 Windows 10 Creators Update for Git Bash 中“解锁”新的 24 位颜色支持?

由于 cmd.exe 现在也支持 ANSI 转义码,我使用以下命令在 cmd.exe(不是 Git Bash)中测试了 24 位颜色支持:

echo ^[[48;2;0;191;243m^[[38;2;255;255;255m Ask Question ^[[0m
Run Code Online (Sandbox Code Playgroud)

(字符序列^[实际上是我使用Ctrl+输入的转义控制字符的视觉表示[。)

cmd.exe 中的 24 位颜色支持

我使用以下命令在 Git Bash 中测试了 24 位颜色支持以及“正常”8 色支持。Git Bash 仅在使用基本(非扩展)ANSI 转义码时输出颜色。

echo -e "\033[48;2;0;191;243m\033[38;2;255;255;255m Ask Question \033[0m"

echo -e "\033[44m\033[37m Ask Question \033[0m"
Run Code Online (Sandbox Code Playgroud)

git bash

TERM环境变量的值从更改cygwinxterm-256color并没有修复它。

小智 1

升级 Git Bash 应该可以让它工作。如果你运行:

echo -e "\033[48;2;0;191;243m\033[38;2;255;255;255m Ask Question \033[0m"
Run Code Online (Sandbox Code Playgroud)

它将返回相应的颜色。输出文本如下所示:

显示文本输出的彩色版本的示例。

要更新 Git Bash,只需从链接下载即可。安装程序应该能够检测到您已经安装了 Git Bash,并且只需要更新即可。