#0
by SPV82
Подскажите, можно ли стандартными средствами командной оболочки XP определить наличие постоянного маршрута? route print x.x.x.x mask y.y.y.y z.z.z.z в любом случае возвращает errorlevel=0, даже если маршрута не существует через указанный шлюз z.z.z.z
#1
by Ангел-Хоронитель
ну все верно.... это результат вывода, а он происходит... а смысл проверять, все равно ведь есть маршрут по-умолчанию? ты опиши задачу подробнее...
#3
by SPV82
Есть постоянные маршруты. Нужно в cmd сделать проверку наличия маршрута через указанный шлюз. Т.е. либо разобрать route print x mask y z либо еще как-то... =========================================================================== Список интерфейсов 0x1 ........................... MS TCP Loopback interface 0x10005 ...02 00 4c 4f 4f 50 ...... Microsoft Loopback Adapter - Virtual Machine Network Services Driver 0x10006 ...00 e0 4c 65 12 0f ...... Realtek RTL8139 Family PCI Fast Ethernet NIC 0x320002 ...00 ff 01 ec 25 5a ...... TAP-Win32 Adapter V9 =========================================================================== =========================================================================== Активные маршруты: Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика 0.0.0.0 0.0.0.0 172.17.57.1 192.168.57.32 1 0.0.0.0 0.0.0.0 192.168.57.1 192.168.57.32 2 10.0.0.0 255.0.0.0 172.17.57.1 192.168.57.32 1 10.10.10.0 255.255.255.0 10.10.10.1 10.10.10.1 30 10.10.10.1 255.255.255.255 127.0.0.1 127.0.0.1 30 10.88.88.0 255.255.255.0 10.88.89.2 10.88.89.1 1 10.88.89.0 255.255.255.252 10.88.89.1 10.88.89.1 30 10.88.89.0 255.255.255.0 10.88.89.2 10.88.89.1 1 10.88.89.1 255.255.255.255 127.0.0.1 127.0.0.1 30 10.255.255.255 255.255.255.255 10.10.10.1 10.10.10.1 30 10.255.255.255 255.255.255.255 10.88.89.1 10.88.89.1 30 62.165.52.0 255.255.255.0 172.17.57.1 192.168.57.32 1 62.165.62.0 255.255.255.0 172.17.57.1 192.168.57.32 1 78.108.64.0 255.255.240.0 172.17.57.1 192.168.57.32 1 80.237.48.70 255.255.255.255 172.17.57.1 192.168.57.32 1 80.237.48.80 255.255.255.240 172.17.57.1 192.168.57.32 1 83.146.72.15 255.255.255.255 172.17.57.1 192.168.57.32 1 83.146.76.0 255.255.255.0 172.17.57.1 192.168.57.32 1 83.146.78.0 255.255.255.0 172.17.57.1 192.168.57.32 1 83.146.79.0 255.255.255.0 172.17.57.1 192.168.57.32 1 83.146.125.0 255.255.255.0 172.17.57.1 192.168.57.32 1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 172.16.0.0 255.255.0.0 172.17.57.1 192.168.57.32 1 172.17.57.0 255.255.255.0 172.17.57.5 192.168.57.32 1 172.17.57.5 255.255.255.255 127.0.0.1 127.0.0.1 1 172.17.255.255 255.255.255.255 192.168.57.32 192.168.57.32 1 192.168.0.0 255.255.0.0 172.17.57.1 192.168.57.32 1 192.168.1.0 255.255.255.0 10.88.89.2 10.88.89.1 1 192.168.2.0 255.255.255.0 10.88.89.2 10.88.89.1 1 192.168.57.0 255.255.255.0 192.168.57.32 192.168.57.32 1 192.168.57.32 255.255.255.255 127.0.0.1 127.0.0.1 1 192.168.57.38 255.255.255.255 127.0.0.1 127.0.0.1 1 192.168.57.255 255.255.255.255 192.168.57.32 192.168.57.32 1 192.168.255.0 255.255.255.0 10.88.89.2 10.88.89.1 1 195.161.195.128 255.255.255.128 172.17.57.1 192.168.57.32 1 195.239.58.160 255.255.255.224 172.17.57.1 192.168.57.32 1 195.239.132.0 255.255.255.0 172.17.57.1 192.168.57.32 1 213.24.188.0 255.255.255.128 172.17.57.1 192.168.57.32 1 213.59.50.0 255.255.255.0 172.17.57.1 192.168.57.32 1 217.106.58.0 255.255.255.192 172.17.57.1 192.168.57.32 1 224.0.0.0 240.0.0.0 10.10.10.1 10.10.10.1 30 224.0.0.0 240.0.0.0 10.88.89.1 10.88.89.1 30 224.0.0.0 240.0.0.0 192.168.57.32 192.168.57.32 1 255.255.255.255 255.255.255.255 10.10.10.1 10.10.10.1 1 255.255.255.255 255.255.255.255 10.88.89.1 10.88.89.1 1 255.255.255.255 255.255.255.255 192.168.57.32 192.168.57.32 1 Основной шлюз: 192.168.57.1 =========================================================================== Постоянные маршруты: Сетевой адрес Маска Адрес шлюза Метрика 192.168.0.0 255.255.0.0 172.17.57.1 1 172.16.0.0 255.255.0.0 172.17.57.1 1 10.0.0.0 255.0.0.0 172.17.57.1 1 62.165.52.0 255.255.255.0 172.17.57.1 1 62.165.62.0 255.255.255.0 172.17.57.1 1 78.108.64.0 255.255.240.0 172.17.57.1 1 80.237.48.80 255.255.255.240 172.17.57.1 1 80.237.48.70 255.255.255.255 172.17.57.1 1 83.146.72.15 255.255.255.255 172.17.57.1 1 83.146.76.0 255.255.255.0 172.17.57.1 1 83.146.78.0 255.255.255.0 172.17.57.1 1 83.146.79.0 255.255.255.0 172.17.57.1 1 83.146.125.0 255.255.255.0 172.17.57.1 1 195.161.195.128 255.255.255.128 172.17.57.1 1 195.239.58.160 255.255.255.224 172.17.57.1 1 195.239.132.0 255.255.255.0 172.17.57.1 1 213.24.188.0 255.255.255.128 172.17.57.1 1 213.59.50.0 255.255.255.0 172.17.57.1 1 217.106.58.0 255.255.255.192 172.17.57.1 1
#4
by Ангел-Хоронитель
я имею ввиду, зачем проверять? если надо, чтобы был - просто добавь... если нет - удали....
#5
by SPV82
Если просто добавить route add -p 192.168.0.0 mask 255.255.255.0 192.168.57.1 к вышеуказанной таблице маршрутов, то он и добавится и будут 2 равнозначных маршрута с одинаковыми метриками. Нужно же сперва сделать проверку наличия маршрута, а уже потом выполнить route add если маршрута нет или route change если он есть но через иной шлюз.
#6
by Ленивый 1сник
В маршрутах я ничего не понимаю, но если тот список который в приведен выдает команда route (в консоль) и нужно проверить есть ли в нем строка с определенным адресом и маской, можно это сделать с помощью "for", примерно так: for /F "tokens=1,2" %%i in ('route bla-bla-bla...') do if %%i==192.168.0.0 if %%j==255.255.0.0 setlocal ok=1 else setlocal ok=0 else setlocal ok=0 Ну или что-то в этом роде:) , хотя я бы лучше на jscript'е написал..
#7
by SPV82
Вот такой пакетник все равно почему-то не находит нужную пару (выполняется крайнее правое else), разделенных пробелом, хотя в echo она есть. Где я слажал? @echo off for /f "tokens=1,2" %%i in ('route print') do ( echo %%i %%j if %%i==192.168.0.0 if %%j==255.255.0.0 (set ok=YES) else (set ok=NO) else (set ok=NO) ) echo %ok% pause
#8
by Ленивый 1сник
Фишка в том, что значение ОК остается от результата просмотра последней строки, в которой этих IP конечно нет. Вот так вроде работает: @echo off set ok=NO for /f "tokens=1,2" %%i in ('route print') do ( echo %%i - %%j if %%i==192.168.101.0 if %%j==255.255.255.1 (set ok=YES) ) echo %ok% pause
#10
by Fragster
netstat -r потом в блокнот (или если есть аналог grep в винде - то в него), и поиск ;)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как проверить скопирован ли документ?
- Как проверить существует ли файл на FTP из предприятия?
- Как проверить значение перечисления в запросе?
- Не удалось проверить целостность app-sentx, код возврата -1073741819
- проверить товар на вхождение в список
- запуск нескольких CMD из другого CMD
- Указанный путь был использован при запуске cmd.exe в качестве текущей папки. cmd.exe
- Подскажите как проверить время выполнения в cmd программы rar
В этой группе 1С
- Программа конвертации DBF dos2win и наоборот. Пакетно.
- Интерактивное удаление помеченных
- Проблема с вставкой единицы измерения (ШТ)
- Список значений в строку
- Авансовый отчет неадекватно принимает проводки Д60.2 - К71.2
- Как программно переименовать имя поля в dbf из 1С?
- Как просмотреть содержимое (процедуры) dll-файла?
- Описание встроенного языка 1С 7.7 chm-формат
- Распределенные ИБ в Управление торговлей 10.3.3
- Внешний отчет
- Зависает выгрузка конфигурации.
- Розница. Кто нибудь видел отчет "Расчет торгового наложения"?
- Как получить префикс номера?
- Ограничение количества строк в 1С 8.1
- В Консоли запросов пустая сводная таблица...
- Слетают индексы
- В диалоге запуска 1С вопросительные знаки
- v7: Как поменять счет отнесения затрат материала.
- Не удалось обработать данные о доходах! ЗиК 281
- Падает 1С при использовании внешней компоненты в темринальной сессии..