批处理中怎么引用函数当参数?

例如:@echooffechoInputthetimeset/pin=In:shutdown-s-t%in%pause要求用户输入时间来控制关机时间,这个该怎么弄啊?运行... 例如:
@echo off
echo Input the time
set /p in=In:
shutdown -s -t %in%
pause
要求用户输入时间来控制关机时间,
这个该怎么弄啊?
运行这个就不行:
第二段代码:
@echo off
set /p a=Input:
if %a% == in (
echo Input the time
set /p in=In:
shutdown -s -t %in%
pause )
我用了另一种方法,可行:
@echo off
set /p a=Input:
if %a% == in goto in
:in
echo Input the time
set /p in=In:
shutdown -s -t %in%
pause
虽然我的问题解决了,但是我还是想知道第二段代码错在哪儿.....
帮帮忙啊
展开
 我来答
匿名用户
2012-06-06
展开全部
代码看上去没问题哦。
你打开记事本,把代码贴进去,另存为 test.bat
然后运行 test.bat 试一试
更多追问追答
追问
额,怎么会这样啊?头疼啊。。。
这只是一段代码,单独执行可以,怎么与其他的一起用就不管用了???
追答
第二段代码的错误,是因为需要使用延迟变量。
@echo off
set /p a=Input:
if %a% == in (
echo Input the time
set /p in=In:
call shutdown -s -t %%in%%
pause )

或者
@echo off&setlocal EnableDelayedExpansion
set /p a=Input:
if %a% == in (
echo Input the time
set /p in=In:
shutdown -s -t !in!
pause )
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式