Назад | Перейти на главную страницу

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

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

  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 

Вы можете получить некоторые подсказки из приведенного ниже примера.

@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