Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Батник провеющий наличие антивируса (http://forum.oszone.net/showthread.php?t=179582)

TJ1 01-07-2010 12:16 1445156

Батник провеющий наличие антивируса
 
Сложность ситуации в том что стоит Windows 98, и добра половина команд на ней не запускается ключей тоже не хватает
Задача состоит в том чтоб найти установлен ли , в моём случае Аваст4, и разветвить если установлен делает то-то(Update.exe), если нет то говорим: "Пока"

На Win2000 мой скипт отрабатывает, вот на win98 отказывается и синтаксические ошибки одна за одной

Скрипт под win2000:

Код:

@Echo off
SetLocal EnableExtensions EnableDelayedExpansion

C:
cd "C:\Program Files\"

dir /B /S /L avast4* > c:\1.txt

For /f "Delims=" %%I In (c:\1.txt) Do set finding=%%I
echo %finding% ...

IF /I "%finding%" == "" goto Er
echo Update
rem dounload and install

del C:\1.txt
exit

:Er
echo No Avast

del C:\1.txt
exit

win 98 не хочет читать из файла нужна аналогичное решение проблемы..

NiOl 01-07-2010 17:04 1445394

Нет у меня W98, поэтому могу только кинуть пробный камень, надеюсь поможет:

Код:

@Echo off
if "%1"=="~" goto Sub
del /f AntiVir.lst 2>nul

rem Указываем ТОЧНЫЕ имена файлов (я их не знаю, уточняйте на месте) - каждый должен встретиться не более одного раза.
for %%F in (avast.exe avp.exe nod32.exe ccapp.exe) do call %0 ~ %%F
del /f AntiVir.tmp 2>nul
if exist AntiVir.lst goto End
echo Ничего не найдено
msg * "Ничего не найдено" | rem Эта строка в W98 может не сработать
pause>nul
goto End

:Sub
dir /b /s d:\%2 >AntiVir.tmp 2>nul
find /c /i "%2" AntiVir.tmp 1>nul 2>nul
if errorlevel 1 goto End
echo Найден %2>>AntiVir.lst
echo Есть %2!!!
rem Здесь можно что-нить сделать полезное
:End



Время: 23:23.

Время: 23:23.
© OSzone.net 2001-