中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-13 00:15
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » set /p 如何设置空值?(已解决) 查看 1,535 回复 9
楼 主 set /p 如何设置空值?(已解决) 发表于 2007-05-25 21:59 ·  中国 广西 柳州 柳北区 电信
初级用户
★★
积分 168
发帖 78
注册 2006-12-27 09:58
19年会员
UID 74699
性别 男
状态 离线
RT:

set /p aa=

请问如何把%aa%的值设置为空?

[ Last edited by applecy on 2007-5-25 at 10:33 PM ]
2 发表于 2007-05-25 22:18 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
直接回车就行了。
3 发表于 2007-05-25 22:25 ·  中国 广西 柳州 柳北区 电信
初级用户
★★
积分 168
发帖 78
注册 2006-12-27 09:58
19年会员
UID 74699
性别 男
状态 离线
@echo off
:st
echo 请选择
set /p aa=
if %aa%== goto st
if %aa%==n goto and
exit
:and
exit

我要做到的效果是如果输入"n"就结束,直接回车就跳转到:st.
请问具体要怎么修改?
4 发表于 2007-05-25 22:27 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

@echo off
:st
echo 请选择
set /p aa=
if == goto st
if /i == goto and
exit
:and
exit
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
applecy +1 2007-05-25 22:32
5 发表于 2007-05-25 22:32 ·  中国 广西 柳州 柳北区 电信
初级用户
★★
积分 168
发帖 78
注册 2006-12-27 09:58
19年会员
UID 74699
性别 男
状态 离线
谢谢lxmxn兄弟帮了大忙``

顺便问下""跟[]有什么区别吗?
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
qinbuer +1 2007-05-25 23:08
6 发表于 2007-05-25 22:59 ·  中国 浙江 杭州 华数宽带
银牌会员
★★★
积分 2,000
发帖 621
注册 2007-01-01 00:00
19年会员
UID 75212
性别 男
状态 离线
我建议
if == goto st (这一句等同于 if "%a%"=="" goto st)
这一句写成
if not defined aa goto st
否则的话极易让人理解为直接回车的话%aa%是空;
实际上直接回车是指不定义aa

[ Last edited by bjsh on 2007-5-25 at 11:02 PM ]
7 发表于 2007-05-27 17:30 ·  中国 山西 运城 联通
银牌会员
★★★
天的白色影子
积分 2,343
发帖 636
注册 2004-03-06 00:00
22年会员
UID 19350
性别 男
状态 离线
我感觉变量未定义和变量为空值其实是同一个概念

比如 set var=就可以理解定义变量为空或者取消变量定义

至于空变量是否在环境表中保存那就是见仁见智了

反正又没有官方文档加以规范

估计微软自己都不想在这上面多绕
8 发表于 2007-05-27 18:25 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
c:\>set var=k

c:\>set var
var=k

c:\>set var=

c:\>set var
环境变量 var 没有定义

c:\>
9 发表于 2010-01-07 23:23 ·  中国 广东 深圳 联通
初级用户
少帅
积分 42
发帖 24
注册 2009-12-17 20:53
16年会员
UID 156814
性别 男
来自 深圳
状态 离线
做记号,学习了
10 发表于 2010-01-10 19:33 ·  中国 陕西 西安 电信
初级用户
★★
积分 128
发帖 122
注册 2009-09-21 06:24
16年会员
UID 152378
性别 男
状态 离线
原来如此啊,那以后在写P的时候可以简化代码啦,又长知识了
论坛跳转: