嗨我想知道一个剧本..
sc \\serverXXX stop serviceABC
timeout /t 2
我是从serverYYY
开始运行此... sc
如何登录serverXXX
停止服务serviceABC
??
请帮忙
答案 0 :(得分:0)
SC为您提供了在\\ SERVERNAME上执行命令的选项(如果需要)。如果您还想传递用户名和密码,请使用以下命令:
SC \\SERVERNAME STOP myService obj= Username password= Password
如果要在本地系统上执行simplay,请跳过servername。
有关SC检查的更多信息http://ss64.com/nt/sc.html。
编辑:
要从评论中回答您的问题,请输入以下代码:
SC \\SERVERNAME START serviceAAA obj= username password= password
:WAITINGFORSERVICEAAA
PING -n 10 127.0.0.1 > NUL
FOR /f "tokens=2 delims= " %%a IN (
'wmic /node:"\\SERVERNAME" service get name^,state /format:TABLE ^| findstr /i /r /c:"serviceAAA"'
) DO SET state=%%a
IF NOT %state%==Running (
GOTO WAITINGFORSERVICEAAA
)
SC \\SERVERNAME START serviceBBB obj= username password= password
此代码的作用是启动serviceAAA,然后等待10秒并检查serviceAAA的状态是否为正在运行。如果不是这种情况,它会跳回来,再等10秒钟,依此类推。一旦状态正在运行,它就会退出循环并启动serviceBBB。