Пакет 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 всегда заключен в [ а также ])

Другие вопросы по тегам