批处理文件以总共停止服务18,然后删除文件,然后重新启动服务

问题描述

|| 我大约有140个需要定期维护的虚拟服务器,它们都运行消息队列,但是存储文件必须保持在512MB以下。我需要按顺序停止所有服务,最后一个是MSMQ服务,然后转到system32 \\ msmg \\ storage文件删除所有* .mq文件,完成后,我希望该批处理文件重新启动服务首先是msmq。我还需要添加一些错误消息,因此,如果该服务无法停止或启动或它已经在运行,等等,下面是我认为应该是但不确定的内容。也许有更好的方法可以做到, 计划是将批处理文件放在所有服务器上,然后将计划任务设置为“运行批处理文件”。 是否可以生成一封电子邮件来说明已成功完成?
NET STOP AVLDataService 2>&1|FIND \"2182\" 
IF errorlevel 1 goto :sub_already_stoped
    

解决方法

您走在正确的轨道上。批处理文件当然可以按所需顺序通过
NET START/STOP
调用来完成。对于错误处理,如果错误不是致命的“ 2”,则向文本文件发送一条消息,然后继续。如果是致命的,请使用ѭ3跳到文件末尾。在文件末尾,您可以使用BMAIL通过电子邮件将文本文件和错误消息发送给自己。     ,尝试这个:
@echo off
title Service Uninstaller
color 0A

set blank=
set service=blank

:start
echo.
echo.
echo.
SET /P service=Enter the name of the service you want to uninstall:  

IF \"%service%\"==\"\" (ECHO Nothing is entered
GoTo :start)

cls
echo.
echo.
echo.
echo We will delete the service: %service%

ping -n 5 -w 1 127.0.0.1>nul

::net stop %service%
ping -n 2 -w 1 127.0.0.1>nul

sc delete %service%
pause

:end