Windows 7 批处理 - 获取 IPv4 地址的最后八位字节并设置环境变量

Windows 7 batch - get last octet of IPv4 address and set environment variable

我有 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%"

和另一个一起做 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,因为您的 IP 取决于本地设置 - 例如在我的计算机上我必须搜索 Antwort 而不是 Reply。但是语法所有语言都一样,所以IP总是被[])

括起来