标题: GOTO 跳转不到指定标签
[打印本页]
作者: THENEWLIFE
时间: 2008-9-3 22:37
标题: GOTO 跳转不到指定标签
@echo off
set /p a=按Y开启定时关机,按N关闭
if /i %a%=="y" goto kaiqi
if /i %a%=="n" goto guanbi
exit/b 0
:kaiqi
sc config schedule start= auto
net start "task scheduler"
set /p b=请输入你要定时关机的时间,例10:30
if %b%=="" goto exit
at %b% shutdown -s -t 0
exit/b 0
:guanbi
sc config schedule start= disabled
exit/b 0
自己做了个定时关机的,不知道为什么GOTO就是跳转不到指定标签
我按"HAT大侠"教过我的查错方法在合适的位置加上了PAUSE发现GOTO跳转不过去.还请高人帮忙看看,还有我的"批处理"错在哪了,这个问题已经2次了有时又能跳过去,又时又不能,还请多忙帮讲解下.谢谢
作者: THENEWLIFE
时间: 2008-9-3 22:42
不好意思,解决了,原来是自己初心%a%两边没加双引号因该这样才对
if /i "%a%"
还有个问题就是我在找服务名的时候我直接在服务器名字旁边打双引号也开启不了
比如sc config "task scheduler" start= auto
不知道是为什么,还是在BAIDU找到了这个缩写才打开的,不知道要怎么才能方便的找服务器名在批处理里的缩写呢
作者: HAT
时间: 2008-9-3 23:09
对服务进行操作,可以用分别用两个命令,sc或者net
sc start 后面跟服务的SERVICE_NAME
net start 后面跟服务的DISPLAY_NAME
task scheduler对应的SERVICE_NAME是Schedule
作者: THENEWLIFE
时间: 2008-9-4 10:46
SERVICE_NAME是服务器名啊,我是这样理解的不知道对不对,
不过你是用什么方法看出的他是SCHEDULE呢,还请详细说明下,谢谢
还有我在sc config schedule start= auto 1>NUL
net start "task scheduler" 1>NUL
加上了1>NUL 为什么屏蔽不了输出呢
[
Last edited by THENEWLIFE on 2008-9-4 at 11:08 AM ]
作者: huahua0919
时间: 2008-9-4 10:55
2>nul
作者: THENEWLIFE
时间: 2008-9-4 10:58
恩,1>NUL 是屏蔽正确的输出 2>NUL 是屏蔽错误的输出
我刚才那个是服务正常开启的反馈信息,因该是正确的啊,为什么要用2>NUL呢
作者: HAT
时间: 2008-9-4 13:34
Quote: |
SERVICE_NAME是服务器名啊,我是这样理解的不知道对不对,
不过你是用什么方法看出的他是SCHEDULE呢,还请详细说明下,谢谢 |
|
看看这个命令的结果
sc query state= all
Quote: |
还有我在sc config schedule start= auto 1>NUL
net start "task scheduler" 1>NUL
加上了1>NUL 为什么屏蔽不了输出呢 |
|
试试这个
sc config schedule start= auto>nul
sc config schedule start= auto>nul 2>nul