这是我的脚本(它从ipconfig中输出ip )
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1-2 delims=:" %%A in ('ipconfig^|find "IP"^|find ":10."') do set ip==%%B
set "ipaddress=%ip:~1%"
set "ipk=%ipaddress:~1,-2%"
echo %ipk%
我得到的是: Echo关闭
发布于 2018-09-18 02:42:43
您的网络范围可能最终会扩展到其他IP范围,所以我想我应该添加另一个选项,这样您就不必硬编码您的起始范围。因此,这更多的是对查询的扩展。
在这里,我只需要配置子网,获取该范围内的IP并与您的IP匹配,然后回显它。它不需要您硬编码IP的起始范围:
@echo off
setlocal enabledelayedexpansion
for /f "tokens=2,3 delims={,}" %%a in ('"wmic nicconfig where IPEnabled="True" get DefaultIPGateway /value | find "I" "') do set gate_test=%%~a
set gate_test=!gate_test: =!
for /f "tokens=1-2 delims=^." %%i in ("!gate_test!") do set range=%%i.%%j
for /f "delims=:" %%l in ('ipconfig ^| findstr IPv4') do (
set ip=%%m
set ip=!ip: =!
for /f "tokens=1-2 delims=^." %%n in ("!ip!") do set iprange=%%n.%%o
if !iprange! == !range! set ipaddress=!ip!
)
)
echo !ipaddress!
https://stackoverflow.com/questions/52368389
复制相似问题