[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off
  2. REM verify if any ipv4 address falls in a special subnet
  3. setlocal EnableDelayedExpansion
  4. set "subnet1=192.168.0.25-192.168.0.78"
  5. set "subnet2=192.168.3.52-192.168.3.90"
  6. set "subnet3=192.168.5.20-192.168.5.55"
  7. for /f "tokens=3" %%A in ('netsh interface ipv4 show addresses^|find /i "IP"^|find /v "127.0.0.1"') do (
  8.   set IPv4=%%A
  9.   call :IPv4ToInt32 "%%A" "IPv4my"
  10.   for /f "tokens=1-3 delims==-" %%B in ('set subnet') do (
  11.     call :IPv4ToInt32 "%%C" "IPv4lo"
  12.     call :IPv4ToInt32 "%%D" "IPv4hi"
  13.     if !IPv4my! geq !IPv4lo! if !IPv4my! leq !IPv4hi! (
  14.       set fallsubnet=%%B
  15.       goto subnetproc
  16.     )
  17.   )
  18. )
  19. goto end
  20. :subnetproc
  21. echo.Your IPv4 address "%IPv4%" is in "%fallsubnet%=!%fallsubnet%!"
  22. REM more tasks
  23. goto end
  24. :end
  25. endlocal
  26. pause
  27. exit /b
  28. :IPv4ToInt32 IPv4 outvar
  29. set Int32=0
  30. for /f "tokens=1-4 delims=." %%A in ("%~1") do (
  31.   set /a "Int32=((%%A*256+%%B)*256+%%C)*256+%%D"
  32. )
  33. if not "%~2"=="" set %~2=%Int32%
  34. exit /b
复制代码
微信:flashercs
QQ:49908356

TOP

subnetproc是IP在指定网段内你要做什么事情.
微信:flashercs
QQ:49908356

TOP

返回列表