批处理检测输入数字检测求助
在输入数字时检测输入的内容是否是0到9之间的数字@echo off&setlocal EnableDelayedExpansion & color 3e
title system auto deploy Application tools
@ECHO OFF
CLS
color 0a
GOTO MENU
:MENU
ECHO.
ECHO. =-=-=-=-==-=-=-=-=
ECHO.
ECHO. 160G DISK
ECHO.
ECHO. 2120G DISK
ECHO.
ECHO. 3240G DISK
ECHO.
ECHO. 4500G DISK
ECHO.
ECHO. 51TBDISK
ECHO.
ECHO.
ECHO.
echo. 请输入选择项目的序号:
set /pID=
if "%id%"=="1"goto cmd1
if "%id%"=="2" goto cmd2
if "%id%"=="3" goto cmd3
IF "%id%"=="4" goto cmd4
IF "%id%"=="4" goto cmd5
PAUSE
:cmd1
CALL X:\windows\system32\fq\60.cmd
:cmd2
CALL X:\windows\system32\fq\120.cmd
:cmd3
CALL X:\windows\system32\fq\240.cmd
:cmd4
CALL X:\windows\system32\fq\500.cmd
:cmd5
CALL X:\windows\system32\fq\1TB.cmd
@echo off
set /p ID=
echo %ID%|findstr /be "*">nul && echo 数字||echo 非数字
pause
y7y007 发表于 2017-12-28 19:50
@echo off
set /p ID=
echo %ID%|findstr /be "*">nul && echo 数字||echo 非数字
不用findstr能实现吗 你只是担心会输错吧,加上
if not "%id%"=="" set id=%id:~0,1%
goto :Menu
就可以了
@ECHO OFF
:MENU
CLS
ECHO.
ECHO. =-=-=-=-==-=-=-=-=
ECHO.
ECHO. 160G DISK
ECHO.
ECHO. 2120G DISK
ECHO.
ECHO. 3240G DISK
ECHO.
ECHO. 4500G DISK
ECHO.
ECHO. 51TBDISK
ECHO.
ECHO.
ECHO.
echo. 请输入选择项目的序号:
set /pID=
if "%id%"=="1"goto cmd1
if "%id%"=="2" goto cmd2
if "%id%"=="3" goto cmd3
IF "%id%"=="4" goto cmd4
IF "%id%"=="5" goto cmd5
if not "%id%"=="" set id=%id:~0,1%
goto :Menu
:cmd1
CALL X:\windows\system32\fq\60.cmd
:cmd2
CALL X:\windows\system32\fq\120.cmd
:cmd3
CALL X:\windows\system32\fq\240.cmd
:cmd4
CALL X:\windows\system32\fq\500.cmd
:cmd5
CALL X:\windows\system32\fq\1TB.cmd
pause
如果按对,除数字的外的按键怎么防止? if ……goto……条件判断语句
……
……
if……goto……最后一句
cls & goto menu
set /a
页:
[1]