中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-25 04:55
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » cmd 窗口的背景颜色和文字颜色 逐个 循环 改变 查看 4,639 回复 4
楼 主 cmd 窗口的背景颜色和文字颜色 逐个 循环 改变 发表于 2007-01-15 12:02 ·  中国 四川 绵阳 电信
初级用户
积分 26
发帖 7
注册 2006-09-06 05:20
19年会员
UID 61942
性别 男
来自 四川
状态 离线
我想让 cmd 窗口的背景颜色和文字颜色 逐个 循环 改变(我想从中选择叫好的效果配置),用for 怎么写
每次改变颜色后 选则是否继续 往下实验,并输出当前窗口的背景与文字颜色代号:
当前背景与文字颜色 如输出 0a
%a% %b% 分别存放
背景颜色和文字颜色 ,就是这样:从0,1,2,3...9,a,b,c,d,e,f 这16个中逐个选取其中两个的组合分别给a,b,直到所有的组合都选到,然后用
color %a%%b%
来 for 循环 选择是否继续 实验下一个和显示当前配置

谢谢~!

[ Last edited by gskys123 on 2007-1-15 at 12:03 PM ]
2 发表于 2007-01-15 12:23 ·  中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226
发帖 1,737
注册 2006-03-10 00:38
20年会员
UID 51697
来自 成都
状态 离线
  版本一:

@echo off
setlocal enabledelayedexpansion
set str=0123456789abcdef

for /l %%i in (0,1,15) do (
for /l %%j in (0,1,15) do (
if %%i neq %%j (
cls
echo 当前颜色代码是:color !str:~%%i,1!!str:~%%j,1!
color !str:~%%i,1!!str:~%%j,1!
pause
)
)
)

  版本二:

@echo off
for %%i in (0 1 2 3 4 5 6 7 8 9 a b c d e f) do (
for %%j in (0 1 2 3 4 5 6 7 8 9 a b c d e f) do (
if %%i neq %%j (
cls
echo 当前颜色代码是:color %%i%%j
color %%i%%j
pause
)
)
)


[ Last edited by namejm on 2007-1-15 at 12:23 AM ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
wangjf +2 2007-03-19 10:18
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
3 发表于 2007-01-15 12:43 ·  中国 福建 厦门 电信
初级用户
积分 49
发帖 20
注册 2006-04-22 11:03
20年会员
UID 54248
状态 离线
测试 namejm 代码,发现:不出现 比如 :10 12 13 14 颜色
4 发表于 2007-01-15 12:48 ·  中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226
发帖 1,737
注册 2006-03-10 00:38
20年会员
UID 51697
来自 成都
状态 离线
  当时只想到数字在前字母在后的情况而忽略了其他情况,犯了个低级错误,汗。2楼的已经更新。
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
5 发表于 2007-01-17 01:23 ·  中国 四川 绵阳 电信
初级用户
积分 26
发帖 7
注册 2006-09-06 05:20
19年会员
UID 61942
性别 男
来自 四川
状态 离线
多谢 namejm !!;)
这样一来我对 for 的用法的理解又深了一点!
谢谢!!
论坛跳转: