PDA

Показать полную графическую версию : [решено] Необходимо вынести ip шлюза в переменую


Ricardo
20-03-2022, 10:44
Добрый день!
Помогите пожалуйста с bat скриптом.

Суть:
Мне нужно в переменную запихнуть адрес шлюза, который мне приходит в 3 столбце
Нужно учитывать, что строк в таблице может быть несколько.
Мне подойдет, тот который первый.
В данный момент, я вывожу табличку и вручную перебиваю адрес.
Вот код:

route -4 PRINT | findstr "0.0.0.0"
@echo You must select the ip that in 3 column
set /p gateway="gateway:"

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


Вот как работает скрипт
166365

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

megaloman
21-03-2022, 07:58
@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




© OSzone.net 2001-2012