не срабатывает скрипт из cmd
Добрый день, при вводе данной команды в консоли:
Код:
netsh interface ipv4 show addresses name="N10" | find "IP"
получаю строку с ip-адресом интерфейса N10 такого вида:
Код:
IP-адрес 192.168.1.2
Необходимо вычленить оттуда собственно адрес, для этого создал cmd-файл и пытаюсь вывод данной команды передать в переменную (пока всю строку!) и соответственно отобразить в консоли:
Код:
For /F "usebackq " %%I In (
`netsh.exe interface ipv4 show addresses name="N10" ^| find.exe "IP"`
) Do Set str=%%I
echo %str%
pause
но получаю строку хелпа команды netsh.
Помогите разобраться что делаю не так.
|
alvibol, надо полагать, «netsh.exe» каким-то образом некорректно воспринимает командную строку. Попробуйте убрать «name=» из неё. Т.е., наподобие:
Код:
@echo off
for /f "usebackq tokens=2" %%i in (
`netsh.exe interface ipv4 show addresses "Подключение по локальной сети" ^| find.exe "IP-адрес"`
) do set sAddress=%%i
if defined sAddress echo [%sAddress%]
Так у меня отрабатывает.
|
alvibol,
Код:
@echo off
setlocal
set "c=netsh interface ipv4 show addresses name^="N10""
for /f "tokens=1,3 delims=- " %%i in ('%c% ^| findstr "IP"') do set "%%i=%%j"
echo %ip%
|
Спасибо всем откликнувшимся, очень помогли!
|
Время: 09:06.
© OSzone.net 2001-