我想更改CMD提示的其余文本的颜色,并保留执行color命令之前打印的文本的颜色。
例子:
@echo off
echo hello world
color 0A
此代码的问题在于,它将把hello world文本以及命令promt中的所有其他文本都变为绿色。
你可能“改变颜色由CMD promted文本的其余部分”(也就是不一样“在给定的颜色显示文本”)的使用PowerShell的帮助,但该方法是缓慢的...
@echo off
echo Standard color
call :SetColor Yellow/Blue
set /P "=Hello" < NUL
call :SetColor Magenta/DarkGreen
echo World!
goto :EOF
:SetColor fore/back
for /F "tokens=1,2 delims=/" %%a in ("%~1") do (
PowerShell $host.UI.RawUI.BackgroundColor = '%%b'; $host.UI.RawUI.ForegroundColor = '%%a'
)
exit /B
通过此方法设置的颜色将用于cmd.exe窗口中显示的所有后文字中!
可用的颜色名称:
Black DarkGray
DarkBlue Blue
DarkGreen Green
DarkCyan Cyan
DarkRed Red
DarkMagenta Magenta
DarkYellow Yellow
Gray White
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句