实例1:
@echo off SETLOCAL EnableDelayedExpansion for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do ( set "DEL=%%a" ) rem echo say the name of the colors, don't read :start rem cls call :ColorText 0a "blue" call :ColorText 0C "green" call :ColorText 0b "red" echo. call :ColorText 19 "yellow" call :ColorText 2F "black" call :ColorText 4e "white" echo. echo aaaaaa pause goto :eof :ColorText echo off <nul set /p ".=%DEL%" > "%~2" findstr /v /a:%1 /R "^$" "%~2" nul del "%~2" > nul 2>&1 goto :eof
实例1 使用注意事项:
1.你的代码放在 :start 和第一行 goto :eof之间
2.换行使用 echo.
3.最好使用双引号把内容括起来,不然遇到空格就会报拒绝访问的错误,内容如果包含特殊字符(例如:"a:!aa" 等等,一般是win不允许我们用来命名文件的符号),也可能导致报错,或者字符不显示,所以最好不要使用特殊字符,这个会在当前目录生成一个临时文件,以你的内容为命名,如果包含了那些字符,就会产生那些文件,最好不删除,需要自己手动删除。
4.关于颜色,有背景色和字体色,第一个数字代表背景色,第二个数字代表字体色,至于颜色值,在 cmd 中输入 color /? 查看
实例1出处:https://www.cnblogs.com/ibingshan/p/10906622.html
实例2:
@echo off ::程序开始前要先调用putcstart来创建一次颜色文件 call:putcstart ::调用过程就是[putcchar 文字 颜色]。文字不能有/:*?"<>|这些符号,因为是通过文件名来产生颜色的;而颜色则跟color命令中的一样。 call:putcchar "This is a test" 2b call:putcchar " !" 2e echo. echo. ::由于受到文件的限制作用,空格符也会有所限制,比如字符串以空格开始、中间含有空格、以空格结尾这三种方式运行的结果都不同。 echo 理想输出[___空格在前面] call:putchar "实际输出[" call:putcchar " 空格在前面" 5b echo ] echo. echo 理想输出[空格在___中间] call:putchar "实际输出[" call:putcchar "空格在 中间" 5b echo ] echo. echo 理想输出[空格在后面___] call:putchar "实际输出[" call:putcchar "空格在后面 " 5b echo ] echo. call:putcchar " 演" 09 call:putcchar "示" 02 call:putcchar "结" 03 call:putcchar "束" 04 call:putcchar " Power" 05 call:putcchar " By" 06 call:putcchar " Kisiboo" 0E pause>nul goto :eof ::下面是过程部分(可以直接复制走) :putcstart set crp=c: set crf=crfile.tmp set /p= <nul>%crp%%crf% goto :eof :putcchar ren %crp%%crf% %1 pushd .&C:&cd findstr /a:%2 . %1? ren %crp%%1 %crf% popd goto :eof :putchar set /p=%1<nul goto :eof