Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Необходимо вынести ip шлюза в переменую

Ответить
Настройки темы
CMD/BAT - [решено] Необходимо вынести ip шлюза в переменую

Аватара для Ricardo

Пользователь


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

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


Добрый день!
Помогите пожалуйста с bat скриптом.

Суть:
Мне нужно в переменную запихнуть адрес шлюза, который мне приходит в 3 столбце
Нужно учитывать, что строк в таблице может быть несколько.
Мне подойдет, тот который первый.
В данный момент, я вывожу табличку и вручную перебиваю адрес.
Вот код:
Скрытый текст
Код: Выделить весь код
route -4 PRINT | findstr "0.0.0.0"
@echo You must select the ip that in 3 column
set /p gateway="gateway:"

.... дальнейшая логика


Вот как работает скрипт
123.png

Отправлено: 10:44, 20-03-2022

 

Аватара для YuS_2

Crazy


Contributor


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

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


Цитата Ricardo:
В данный момент, я вывожу табличку и вручную перебиваю адрес. »
Для внедрения автоматизации, лучше всего подойдет повершел... и да, его таки можно запускать из cmd и даже присваивать значения переменным, но это не самое эффективное его использование.
Код: Выделить весь код
get-netroute -dest '0.0.0.0/0' | select -exp 'NextHop'
- выдаст шлюз по умолчанию.

-------
scio me nihil scire. Ѫ


Отправлено: 17:11, 20-03-2022 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Contributor


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

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


Код: Выделить весь код
@Echo Off
cls
	FOR /F "usebackq tokens=3 delims= " %%s In (`2^>nul route -4 PRINT ^| findstr /R /C:"^.*0\.0\.0\.0.*0\.0\.0\.0.*$"`) DO (
		Set "gateway=%%s"
		GoTo :Continue
	)
	:Continue

Echo %gateway%

Pause
Exit /B
Код: Выделить весь код
@Echo Off
cls
	FOR /F "usebackq delims={," %%s In (`wmic NICCONFIG GET DefaultIPGateway ^| find ","`) DO Set "gateway=%%~s"

Echo %gateway%

Pause
Exit /B

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 21-03-2022 в 08:30.

Это сообщение посчитали полезным следующие участники:

Отправлено: 07:58, 21-03-2022 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Необходимо вынести ip шлюза в переменую

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Формирование ip адреса на основании шлюза kbvolk Скриптовые языки администрирования Windows 0 14-07-2018 17:58
2008 R2 - Не сохраняется IP-адрес шлюза... BVN-2005 Windows Server 2008/2008 R2 1 21-07-2015 11:58
Route/Bridge - Проблемы с подключением к внешнему ip шлюза из локальной сети Ash-Fox Сетевые технологии 1 25-10-2012 13:39
необходимо изменить IP на сервере с Актив Директори 2003? Alexir Microsoft Windows NT/2000/2003 4 19-10-2007 15:33
[решено] Как настроить NIC на переключение на дополнительный IP шлюза при отказе основного IP Sluggard Microsoft Windows NT/2000/2003 4 19-05-2006 10:28




 
Переход