是有点美中不足,但也勉强可以,也想请教高手帮忙优化下代码
- :输入
- :重设1
- set 标号=1
- set 格式输入=
- set /p 格式输入= 输入IP 地址:
- goto 识别格式
-
- :回设1
- echo.
- :重设2
- set 地址=%格式%
- set 标号=2
- set 格式输入=
- set /p 格式输入= 输入子网掩码:
- goto 识别格式
-
- :回设2
- echo.
- :重设3
- set 子网=%格式%
- set 标号=3
- set 格式输入=
- set /p 格式输入= 输入默认网关:
- goto 识别格式
-
- :回设3
- echo.
- :重设4
- set 网关=%格式%
- set 标号=4
- set 格式输入=
- set /p 格式输入= 输入首选DNS:
- goto 识别格式
-
- :回设4
- echo.
- :重设5
- set 首选=%格式%
- set 标号=5
- set 格式输入=
- set /p 格式输入= 输入备用DNS:
- goto 识别格式
-
- :回设5
- set 备用=%格式%
- goto 跳过
-
- :识别格式
- setlocal enabledelayedexpansion
- set 格式=%格式输入%
- set "s=[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*"
- echo %格式%|findstr /be "%s%" >nul||set flag=a
- set n=%格式:.= %
- for %%a in (%n%) do (
- set /a var=1%%a 2>nul
- if !var! gtr 1255 set flag=a
- )
- if defined flag echo 错误,请重新输入&endlocal&goto 重设%标号%
- goto 回设%标号%
-
- :跳过
- cls
- echo ╭────────────────────╮
- echo │ │
- echo │ 确 认 信 息 是 否 准 确 │
- echo │ │
- echo ╰────────────────────╯
- echo.
- echo.
- echo 【1】IP 地址: %地址%
- echo.
- echo 【2】子网掩码:%子网%
- echo.
- echo 【3】默认网关:%网关%
- echo.
- echo 【4】首选 DNS:%首选%
- echo.
- echo 【5】备用 DNS:%备用%
- echo.
- :确认
- echo.
- echo 确认无误:按[ y ]继续,确认有误:按[ n ]重设
- echo.
- set 确认=
- set /p 确认= 请输入确认结果:
- if /i "%确认%"=="y" goto 设置
- if /i "%确认%"=="n" goto 输入
- goto 确认
-
复制代码
[ 本帖最后由 keshun 于 2010-10-13 14:37 编辑 ] |