Пакет Windows 7 - получить последний октет IPv4-адреса и установить переменную среды
У меня есть машины с Windows 7, которые получают образ, и после создания образа я должен установить переменную среды STATION в последний октет IP-адреса машины. Как мне разобрать IP-адрес и получить последний октет для установки переменной STATION?
Это только устанавливает переменную на полный IP-адрес:
@echo off
for /f "tokens=1 delims=:" %%j in ('ping %computername% -4 -n 1 ^| findstr Reply') do (set localip=%%j)
SETX /m STATION "%localip:~11%"
1 ответ
Решение
Сделай это с другим for
:
for /f "Tokens=4 delims=." %%a in (%localip%) do set lastOctett=%%a
Могу ли я предложить:
for /f "tokens=2 delims=[]" %%a in ('ping %computername% -4 -n 1') do for /f "tokens=4 delims=." %%b in ("%%a") do SETX /m STATION %%b
(Я использовал другой метод для получения IP-адреса, потому что ваш зависит от локальных настроек - например, на моем компьютере мне придется искать Antwort
вместо Reply
, Но синтаксис одинаков во всех языках, поэтому IP всегда заключен в [
а также ]
)