imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 04.10.2007, 05:24     # 1
nyb
Guest
 
Сообщения: n/a

условие на проверку связи с удалённой машиной

Подскажите как реализовать следующее:

Имеется файл, к примеру, xxx.bat с определённым набором команд, которые нужно запустить на удалённых машинах локальной сети. Требуется посредством команд пакетных программ ввести условие на проверку связи с удалённой машиной (в сети ли она в данный момент или нет). Если да, то идёт запуск скрипта.

Думаю, можно произвести данную операцию через ping, но вот как - загвоздка?
 
Старый 04.10.2007, 10:08     # 2
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 382

Borland - Гад и сволочь
Код:
ping -n 1 <здесь подставляется переменная с именем либо IP машины>
if ERRORLEVEL 1 goto SKIP_MACHINE
REM здесь добавляются команды, выполняемые для работающей машины
REM (или вызов соответствующего скрипта)
:SKIP_MACHINE
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий

Borland вне форума  
Старый 05.10.2007, 02:50     # 3
nyb
Guest
 
Сообщения: n/a

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

К примеру, ip:=1 (знак присваивания)

Вроде бы переменная описывается как %ip, но не хочет программа её воспринять!
Если быть конкретнее, можно ли реализовать следуюющее:

скажем, имеем ip адрес 192.168.0.1, нужно пропинговать следующте 50 адресов (192.168.0.2, 192.168.0.3 ...). Если ping проходит, то выполняются соответствующие команды. Если нет, то переходим на следующий ip?

Последний раз редактировалось nyb; 05.10.2007 в 02:52.
 
Старый 05.10.2007, 09:36     # 4
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 382

Borland - Гад и сволочь
nyb, в .cmd-скриптах значение переменной устанавливается командой SET. Подробнее - SET /? в консоли.
Для последовательного перебора IP (или любых других цифровых значений) удобнее воспользоваться конструкцией FOR /L. Например,
Код:
FOR /L %%N IN (2,1,254) DO CALL 1.cmd 192.168.0.%%N
последовательно запустит 253 раза на выполнение файл 1.cmd, передавая ему в качестве параметра IP в диапазоне 192.168.0.2-192.168.0.254. Подробнее - FOR /? в консоли.
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий

Borland вне форума  

Теги (метки)
bat, cmd


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 07:57.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.