'DownFlag=12 表示强制关闭计算机
'DownFlag=8 关闭计算机
'DownFlag=6 表示强制重新启动计算机
'DownFlag=2 表示重启计算机
'DownFlag=4 表示强制注销
'此处我们使用12,表示强制关闭计算机
DownFlag=6
set win32_OS=getobject("winmgmts:{(Shutdown)}//./root/cimv2").execQuery("select * from win32_operatingsystem where primary=true")
for each OS in win32_OS
OS.win32shutdown(DownFlag)
next
set win32_OS=nothing
----------------------------------------------------------------------------
echo "服务器自动重启服务正在进行中......."
echo "停止服务请按 Ctrl+C"
ping 192.168.10.231 >ping.txt
rem echo %errorlevel%
if %errorlevel%==1 goto ping2
goto loop
:ping2
ping 192.168.10.25>ping.txt
rem echo %errorlevel%
if %errorlevel%==1 goto reboot
goto loop
:reboot
echo %date% %time% "服务器正在重新启动" >>errlog.log
echo %date% %time% "正在重新启动中...."
wscript vb.vbs
wscript vb.vbs
echo %date% %time% "已重新启动...."
goto loop
:loop
echo "正在删除日志文件errlog.log"
del /q errlog.log
sleep 60
goto begin
最好的办法是将sleep.exe文件直接拷贝到system32目录就可以直接调用运行了
因为at和计划任务需要调用系统目录运行,便于at命令调用