中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-07 11:18
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » xiao经验:set命令和if语句注意事项,不对的请指正 查看 823 回复 5
楼 主 xiao经验:set命令和if语句注意事项,不对的请指正 发表于 2008-02-09 15:40 ·  中国 吉林 吉林市 联通
中级用户
★★
积分 307
发帖 130
注册 2008-02-01 21:29
18年会员
UID 109981
性别 男
状态 离线
set语句不能同时使用/q 和/a两个参数,如果要定义数字变量只需要
set /a 变量名=提示文字 或者set /p
if 后面的条件表达式不能进行代数和逻辑运算,充其量只能使用"string1"=="string2"(判断字符串)和equ neq lss leq gtr geq(判断数字)如果需要判断复杂的运算,就需要用set s=表达式的形式
set命令支持复杂运算,弥补了if命令的不足!!
再把运算的结果%s%或者!s!带入if判断表达式

希望版主把这段话正确的部分加入教程中!!我将不胜感谢!!
2 发表于 2008-02-09 19:07 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
……郁闷挺绕的。。。不过/q参数没有见过。

如果你是说/p的话……
3 发表于 2008-02-09 19:22 ·  中国 山东 济南 联通
新手上路
积分 10
发帖 5
注册 2007-11-23 18:08
18年会员
UID 103545
性别 男
状态 离线
非常宝贵的经验,记住了
4 发表于 2008-02-10 14:14 ·  中国 吉林 吉林市 联通
中级用户
★★
积分 307
发帖 130
注册 2008-02-01 21:29
18年会员
UID 109981
性别 男
状态 离线
帖子有错误,第一行的/q其实是/p,更正过来
5 补充一点 发表于 2008-02-10 21:40 ·  中国 吉林 吉林市 联通
中级用户
★★
积分 307
发帖 130
注册 2008-02-01 21:29
18年会员
UID 109981
性别 男
状态 离线
程序要写成一块一块的,块越小查找错误就越方便
6 发表于 2008-02-10 21:42 ·  中国 吉林 吉林市 联通
中级用户
★★
积分 307
发帖 130
注册 2008-02-01 21:29
18年会员
UID 109981
性别 男
状态 离线
查找错误的方法:打开命令显示echo on
在程序段里加上echo %djfk%
pause
论坛跳转: