作者:applecy | 时间:2007-05-25 21:59 | 标题:set /p 如何设置空值?(已解决)
RT:
set /p aa=
请问如何把%aa%的值设置为空?
[ Last edited by applecy on 2007-5-25 at 10:33 PM ]
作者:lxmxn | 时间:2007-05-25 22:18
直接回车就行了。
作者:applecy | 时间:2007-05-25 22:25
@echo off
:st
echo 请选择
set /p aa=
if %aa%== goto st
if %aa%==n goto and
exit
:and
exit
我要做到的效果是如果输入"n"就结束,直接回车就跳转到:st.
请问具体要怎么修改?
作者:lxmxn | 时间:2007-05-25 22:27
@echo off
:st
echo 请选择
set /p aa=
if == goto st
if /i == goto and
exit
:and
exit
作者:applecy | 时间:2007-05-25 22:32
谢谢lxmxn兄弟帮了大忙``
顺便问下""跟[]有什么区别吗?
作者:bjsh | 时间:2007-05-25 22:59
我建议
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 ]
作者:qzwqzw | 时间:2007-05-27 17:30
我感觉变量未定义和变量为空值其实是同一个概念
比如 set var=就可以理解定义变量为空或者取消变量定义
至于空变量是否在环境表中保存那就是见仁见智了
反正又没有官方文档加以规范
估计微软自己都不想在这上面多绕
作者:slore | 时间:2007-05-27 18:25
c:\>set var=k
c:\>set var
var=k
c:\>set var=
c:\>set var
环境变量 var 没有定义
c:\>
作者:tophu0041463 | 时间:2010-01-07 23:23
做记号,学习了
作者:jarry0932 | 时间:2010-01-10 19:33
原来如此啊,那以后在写P的时候可以简化代码啦,又长知识了