windows - 如何在 Windows 命令行中用不同的颜色回显

标签 windows batch-file command-line colors

我知道 color bf 命令设置了整个命令行窗口的颜色,但我想用不同的颜色打印一行。

最佳答案

I wanted to to print one single line in a different color.

使用 ANSI 转义序列。

Windows 10 之前的版本 - 控制台上不支持 ANSI 颜色

对于Windows 10以下版本,Windows命令控制台默认不支持输出着色。您可以安装 Cmder , ConEmu , ANSICONMintty (在 GitBash 和 Cygwin 中默认使用)为 Windows 命令控制台添加着色支持。

Windows 10 - 命令行颜色

从 Windows 10 开始,Windows 控制台默认支持 ANSI 转义序列和一些颜色。该功能随 2015 年 11 月的 Threshold 2 更新一起提供。

MSDN Documentation

更新(05-2019):ColorTool使您能够更改控制台的配色方案。它是 Microsoft Terminal 的一部分项目。

演示

enter image description here

批处理命令

win10colors.cmdMichele Locati 撰写:

下面的文本已去除特殊字符,无法使用。您必须从 here 复制它.

@echo off
cls
echo [101;93m STYLES [0m
echo ^<ESC^>[0m [0mReset[0m
echo ^<ESC^>[1m [1mBold[0m
echo ^<ESC^>[4m [4mUnderline[0m
echo ^<ESC^>[7m [7mInverse[0m
echo.
echo [101;93m NORMAL FOREGROUND COLORS [0m
echo ^<ESC^>[30m [30mBlack[0m (black)
echo ^<ESC^>[31m [31mRed[0m
echo ^<ESC^>[32m [32mGreen[0m
echo ^<ESC^>[33m [33mYellow[0m
echo ^<ESC^>[34m [34mBlue[0m
echo ^<ESC^>[35m [35mMagenta[0m
echo ^<ESC^>[36m [36mCyan[0m
echo ^<ESC^>[37m [37mWhite[0m
echo.
echo [101;93m NORMAL BACKGROUND COLORS [0m
echo ^<ESC^>[40m [40mBlack[0m
echo ^<ESC^>[41m [41mRed[0m
echo ^<ESC^>[42m [42mGreen[0m
echo ^<ESC^>[43m [43mYellow[0m
echo ^<ESC^>[44m [44mBlue[0m
echo ^<ESC^>[45m [45mMagenta[0m
echo ^<ESC^>[46m [46mCyan[0m
echo ^<ESC^>[47m [47mWhite[0m (white)
echo.
echo [101;93m STRONG FOREGROUND COLORS [0m
echo ^<ESC^>[90m [90mWhite[0m
echo ^<ESC^>[91m [91mRed[0m
echo ^<ESC^>[92m [92mGreen[0m
echo ^<ESC^>[93m [93mYellow[0m
echo ^<ESC^>[94m [94mBlue[0m
echo ^<ESC^>[95m [95mMagenta[0m
echo ^<ESC^>[96m [96mCyan[0m
echo ^<ESC^>[97m [97mWhite[0m
echo.
echo [101;93m STRONG BACKGROUND COLORS [0m
echo ^<ESC^>[100m [100mBlack[0m
echo ^<ESC^>[101m [101mRed[0m
echo ^<ESC^>[102m [102mGreen[0m
echo ^<ESC^>[103m [103mYellow[0m
echo ^<ESC^>[104m [104mBlue[0m
echo ^<ESC^>[105m [105mMagenta[0m
echo ^<ESC^>[106m [106mCyan[0m
echo ^<ESC^>[107m [107mWhite[0m
echo.
echo [101;93m COMBINATIONS [0m
echo ^<ESC^>[31m                     [31mred foreground color[0m
echo ^<ESC^>[7m                      [7minverse foreground ^<-^> background[0m
echo ^<ESC^>[7;31m                   [7;31minverse red foreground color[0m
echo ^<ESC^>[7m and nested ^<ESC^>[31m [7mbefore [31mnested[0m
echo ^<ESC^>[31m and nested ^<ESC^>[7m [31mbefore [7mnested[0m

关于windows - 如何在 Windows 命令行中用不同的颜色回显,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2048509/

相关文章:

c# - 16 位数字的基本正则表达式

c++ - 在 Linux 中使用 PE 节头

命令行上的 Node.js 版本? (不是 REPL)

batch-file - 启动 Java/Batch 混合而不显示命令提示符

batch-file - ffmpeg 与输出文件相同的输入(需要临时文件但如何?)

java - 如何添加自定义 Java 命令行选项?

linux - 如何使用 sed 作为模式 "/"获取子字符串

c++ - 使用 std::ifstream 而不是文件缓存强制读取磁盘

java - windows相当于linux的/dev/video0是什么?

windows - 在系统启动时依次启动 cmd-scripts