批处理中最快的颜色功能是什么?

时间:2015-10-23 00:57:19

标签: batch-file cmd console

我最近尝试在一个cmd窗口中使用多种颜色。我找到的每个颜色函数(例如这一个:http://www.dostips.com/forum/viewtopic.php?p=41155)都非常慢,并且需要加载颜色映射。

如果你问,通过颜色图我的意思是这段代码:

@echo off
for %%a in (0 1 2 3 4 5 6 7 8 9 a b c d e f) do (
    for %%b in (0 1 2 3 4 5 6 7 8 9 a b c d e f) do (
        call :color %%a%%b %%a%%b
        if %%a%%b==1f call :color \n
        if %%a%%b==3f call :color \n
        if %%a%%b==5f call :color \n
        if %%a%%b==7f call :color \n
        if %%a%%b==9f call :color \n
        if %%a%%b==bf call :color \n
        if %%a%%b==df call :color \n
        if %%a%%b==ff call :color \n
    )
)

:color - some color function

对于批处理中的每个颜色函数,此代码运行速度非常慢。我想这是因为在%Temp%目录中创建文件。

如果一次使用大量颜色,批量中是否有颜色功能可以立即使用?外部程序或powershell也很重要!

3 个答案:

答案 0 :(得分:1)

是的,那些纯批次解决方案很慢。尝试cecho:http://www.codeproject.com/Articles/17033/Add-Colors-to-Batch-Files

即使在同一时间显示数百种颜色的情况下,它也会立即显示输出。

希望我帮助过:)

答案 1 :(得分:1)

如果您正在寻找PowerShell解决方案,Write-Host支持控制台颜色:

Clear-Host
Write-Host "######" -ForegroundColor Green
Write-Host '" ' -ForegroundColor Yellow -NoNewline
Write-Host '21' -ForegroundColor Red -NoNewline
Write-Host ' !' -ForegroundColor Yellow
Write-Host '######' -ForegroundColor Cyan

enter image description here

答案 2 :(得分:1)

在Windows 10中,由于实施了ANSI转义颜色序列,您可以尝试:

<PropertyGroup>   
    <SatelliteResourceLanguages>en</SatelliteResourceLanguages>
</PropertyGroup>

这是

写的

Michele Locati

这真的非常快,没有PowerShell或FindStr的速度变慢。