以下存为bat即可。其实就是重启下打印服务。写好了分享出来,记得右键以管理员身份运行才可以
20200918_update:更新一个注释错误
@echo off |chcp 65001
@echo:
@echo 临时设置活动代码页编号为936简体中文(GBK)
@echo:
@echo start script
@echo off
sc query |find /i "Spooler" >nul2 >nul
@echo 通过sc query 查询服务是否存在
if %errorlevel%==0 (goto exist) else goto notexist
::通过errorlevel 的返回值判断上次命令是否成功 errorlevel为0则为查询到结果,否则没有。
::如果errorlevel 的值为0 ,即查询到结果,也就是服务正在运行,则执行exist里面的命令。
::否则执行notexist里面的命令
:exist
echo ######### Spooler is running, restart Spooler ###########
sc stop Spooler >nul2 >nul
@echo 停止Spooler服务
if 0 == %ERRORLEVEL% (echo 停止服务成功 >>日志.log) else echo 停止服务失败 >>日志.log
::通过errorlevel判断命令是否执行成功
sc start Spooler >nul2 >nul
@echo 启动Spooler服务
if 0 == %ERRORLEVEL% (echo 启动服务成功 >>日志.log) else echo 启动服务失败
if 0 == %ERRORLEVEL% (echo 启动服务成功 >>日志.log) else echo 启动服务失败 >>日志.log
::通过errorlevel判断命令是否执行成功
echo %date% %time:~0,2%-%time:~3,2% 服务重新启动成功
echo %date% %time:~0,2%-%time:~3,2% 服务重新启动成功 >> 日志.log
pause
goto :eof
:notexist
echo ######### Spooler is not running,will start Spooler ##########
sc start Spooler >nul2 >nul
if 0 == %ERRORLEVEL% (echo 启动任务成功 >>日志.log) else echo 启动服务失败
if 0 == %ERRORLEVEL% (echo 启动任务成功 >>日志.log) else echo 启动服务失败 >>日志.log
::通过errorlevel判断命令是否执行成功
echo %date% %time:~0,2%-%time:~3,2%% 服务启动成功
echo %date% %time:~0,2%-%time:~3,2% 服务启动成功 >> 日志.log
pause
goto :eof