Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Задача стояла такая:
Мониторить в Zabbix актуальность антивирусных баз NOD32.
В первом варианте сделал таким образом, что скрипт в планировщике пишет в файл цифру-разницу между текущей датой и датой последнего обновления, Zabbix потом через UserParameter эту цифру забирает и обрабатывает.
Все таки удалось(пусть и местами коряво) получить эту цифру сразу в Zabbix путем подстановки в UserParameter пути к bat файлу.
Скрипт, в итоге, выглядит так

Код: Выделить весь код
@echo off
cd /d c:\zabbix_209
setlocal enabledelayedexpansion
CHCP 1251 > Nul
For /F "Tokens=2*" %%a In ('Reg Query "HKEY_LOCAL_MACHINE\SOFTWARE\ESET\ESET Security\CurrentVersion\Info"^
|Find /I "ScannerVersion"') Do Set DPath=%%b
echo %DPath% | gawk.exe "{print $2}"| tr.exe -d "()" > c:\zabbix_209\dateofversion.txt
For /F "usebackq" %%a In (`cat.exe c:\zabbix_209\dateofversion.txt`) do set dateofnod32=%%a
set day=%DATE:~0,2%
set month=%DATE:~3,2%
set year=%DATE:~6,4%
set datenow=%year%%month%%day%
set /a diff=%datenow%-%dateofnod32%
CHCP 866  >  Nul
echo %diff%  
exit /b
UserParameter вот такой
Код: Выделить весь код
UserParameter=statenod32updates_v1, c:\zabbix_209\checknod32updates_v1.bat
Воркает вроде бы
Код: Выделить весь код
root@zabbix:~# zabbix_get -s 10.189.223.13 -p 10053  -k statenod32updates_v1
1
ps
как раз таки 0 мешал напрямую в Zabbix'е забрать цифру, говорил мол
Код: Выделить весь код
C:\zabbix_209>set /p dateofnod32= 0<c:\zabbix_209\dateofversion.txt 
Открытие дескриптора невозможно в процессе
перенаправления дескриптора 0.
и так далее, т.е. скрипт не так как нужно отрабатывал

Последний раз редактировалось FessAectan, 06-11-2013 в 16:57. Причина: дополнение


Отправлено: 16:55, 06-11-2013 | #3