批处理文件中的find返回值

netstart>service.txtfind/iservice.txt"SQLServer(MSSQLSERVER)"iferrorlevel1gotostartif... net start >service.txt
find /i service.txt "SQL Server (MSSQLSERVER)"
if errorlevel 1 goto start
if errorlevel 0 goto stop
:start
net start MSSQLSERVER
goto success
:stop
net stop MSSQLSERVER
goto end
:success
::net start
@echo 服务开启成功,按任意键结束!
:end
del "service.txt"

小弟不明白,1应该是代表有,0是没找到。可以上代码在我看来是相反。请大神给我解释一下。谢谢!
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
我还是托
2011-04-21 · TA获得超过264个赞
知道小有建树答主
回答量:160
采纳率:100%
帮助的人:130万
展开全部
errorlevel 错误=1,就是有错误,也就是find语句出现的错误,就是没找到
反之就是找到。
追问
再请问一句啊。判定某服务是否开启,还有别的办法么?
追答
net start >service.txt
find /i service.txt "SQL Server (MSSQLSERVER)"
if errorlevel 1 goto start
if errorlevel 0 goto stop
把这4句话写成一句
net start | find /i "SQL Server (MSSQLSERVER)" &&goto start || goto stop
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式