Скрипт для проверки существования каталога и установки программного обеспечения

Во-первых, прошу прощения за мое невежество, поскольку я совершенно новичок в написании сценариев. Вот что я планирую сделать

  1. Остановить службу

    (Было бы хорошо, если бы я мог проверить, существует ли служба в первую очередь, в противном случае, он все равно должен продолжить работу с правильным сценарием?)

  2. Проверьте Win2k или WinXP, удалите службу и удалите файлы в соответствии с типом ОС

  3. Установите новое приложение

  4. Запустить сервис

Вот что я имею на данный момент. Может кто-то, пожалуйста, пересмотреть и предложить пути улучшения? Спасибо заранее.

@echo off  
net stop "service name"  

Здесь я хочу проверить, существует ли служба, если да, просто продолжите и остановите ее, в противном случае откройте "Служба не установлена" и перейдите к процедуре uninstall_and_install, могу ли я сделать, как показано ниже?

if ERRORLEVEL 0 GOTO uninstall_and_install IF NOT echo Service not found GOTO uninstall_and_install  
:uninstall_and_install  
C:  
IF NOT EXIST c:\Windows GOTO Win2k  
cd Windows\system32\  
"insert commands to uninstall and install 

:Win2k  
cd Winnt\system32\  
"insert commands to uninstall and install 

exit 

1 ответ

Вы можете взять некоторые подсказки из примера ниже.

@echo off
set SERVICENAME=w32time

REM Check if the service is installed
REM ==================================================
    sc query %SERVICENAME% > nul 2>nul
    if %ERRORLEVEL% == 1060 goto serviceDoesNotExist

:serviceDoesExist
    net stop %SERVICENAME%

:serviceDoesNotExist
    REM Get Operating System Version
    for /F "usebackq delims==" %%i IN (`ver`) DO (set OSVersion=%%i)

    echo %OSVersion% | find "Microsoft Windows [Version 6.1.7600]"
    if %ERRORLEVEL% NEQ 0 GOTO :windows7

:windows7
    echo Install the Application the Windows 7 way
Другие вопросы по тегам