|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - определить основной шлюз для выбраннго адаптера |
|
CMD/BAT - определить основной шлюз для выбраннго адаптера
|
Новый участник Сообщения: 29 |
|
|
Отправлено: 22:45, 22-03-2017 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Откуда ж нам знать, по каким критериям Вы выбираете потребный. Озвучьте.
|
Отправлено: 01:55, 07-04-2017 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать Можно по названию сетевого подключения или просто первый, второй или третий шлюз. Они всегда выдаются в одном порядке.
Конечно лучше по названию сетевого подключения. |
Отправлено: 06:28, 07-04-2017 | #12 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата neth1:
@echo off set "na1=" for /f "tokens=2 delims==" %%a in ('wmic path Win32_networkadapter where ^(NetConnectionStatus^="2"^) get NetConnectionID /value^|find "="') do ( set "na=%%a" if not defined na1 set "na1=%%a" ) echo Первое имя сетевого подключения - %na1% echo Последнее имя сетевого подключения - %na% pause>nul И да, это если все всегда включено и подключено каждый раз идентично, если нет, понятно что имя первого займет другое, если сегодня первый отдыхает. |
|
Отправлено: 15:49, 07-04-2017 | #13 |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать Проблема не в том, чтобы спарсить сетевые подключения, а в том чтобы поставить нужное в поиск парсера.
У меня слишком низкий скилл, знаю что хочу сделать, но не вижу реализацию ![]() |
Отправлено: 22:42, 07-04-2017 | #14 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Если поизвращаться с парсингом ipconfig /all, то вывести нужный шлюз, например первого подключенного адаптера можно так:
@echo off set "na="& set "shl=" for /f "tokens=2 delims==" %%a in ('wmic path Win32_networkadapter where ^(NetConnectionStatus^="2"^) get NetConnectionID /value^|find "="') do if not defined na set "na=%%a" for /f "delims=[]" %%a in ('ipconfig /all^|find /n "%na%"') do set "ns=%%a" for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|more +%ns%^|find "Основной шлюз"') do if not defined shl set "shl=%%a" echo %shl: =% pause |
Отправлено: 01:18, 08-04-2017 | #15 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать |
Отправлено: 01:33, 08-04-2017 | #16 |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать На моей системе первый вариант также не работает:
Почему может не работать netsh? Он есть. netsh>help Применимы следующие команды: Команды в этом контексте: .. - Переход на один контекстный уровень вверх. ? - Отображение списка команд. abort - Отмена изменений, сделанных в автономном режиме. add - Добавление элемента конфигурации в список элементов. alias - Добавление псевдонима. bridge - Изменения в контексте 'netsh bridge'. bye - Выход из программы. commit - Применение изменений, сделанных в автономном режиме. delete - Удаление элемента конфигурации из списка элементов. diag - Изменения в контексте 'netsh diag'. dump - Отображение сценария конфигурации. exec - Запуск файла сценария. exit - Выход из программы. firewall - Изменения в контексте 'netsh firewall'. help - Отображение списка команд. interface - Изменения в контексте 'netsh interface'. lan - Изменения в контексте 'netsh lan'. nap - Изменения в контексте 'netsh nap'. offline - Переход в автономный режим. online - Переход в оперативный режим. popd - Получение контекста из стека. pushd - Помещение текущего контекста в стек. quit - Выход из программы. ras - Изменения в контексте 'netsh ras'. routing - Изменения в контексте 'netsh routing'. set - Обновление параметров конфигурации. show - Отображение информации. unalias - Удаление псевдонима. winsock - Изменения в контексте 'netsh winsock'. Доступны следующие дочерние контексты: bridge diag firewall interface lan nap ras routing winsock Цитата alpap:
|
|
Последний раз редактировалось neth1, 08-04-2017 в 07:24. Отправлено: 07:17, 08-04-2017 | #17 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата neth1:
Во-вторых, значения шлюза может и не быть на определенном адаптере наберите в командной строке: ipconfig /all>"C:\file.txt" и посмотрите какие имена сетевых подключений, у кого есть Основной шлюз и какой у кого нет, скопируйте имя подключения для которого надо выводить значение шлюза, если оно есть как таковое, конечно код сохраняйте в кодировке 866! |
|
Отправлено: 17:56, 08-04-2017 | #18 |
Новый участник Сообщения: 29
|
Профиль | Отправить PM | Цитировать Цитата alpap:
|
|
Отправлено: 19:48, 08-04-2017 | #19 |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата neth1:
1. Вывод этого: ipconfig /all>"C:\file.txt" (можете затереть цифры значений или изменить) 2. этот код @echo on for /f "tokens=2 delims=:" %%a in ('netsh interface ip show addresses name^="Имя подключения"^|find "Основной шлюз"') do set "shl=%%a" echo %shl: =% pause 3. скриншот окна cmd после запуска |
|
Отправлено: 01:12, 09-04-2017 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2008 R2 - Основной шлюз | aus | Windows Server 2008/2008 R2 | 15 | 03-07-2013 13:37 | |
Разное - Основной шлюз :S | apk.apocalypses | Сетевые технологии | 2 | 22-02-2012 14:36 | |
VPN S-T-S как основной шлюз | Tele2 | ISA Server / Microsoft Forefront TMG | 5 | 19-08-2010 15:30 | |
Основной шлюз | wik7000 | Microsoft Windows NT/2000/2003 | 11 | 17-11-2006 13:19 |
|