我正在编写一个批处理脚本,如果用户输入为空或不以“ DTO”结尾,则需要让用户再次输入DTO名称。

:INPUT
SET /P INPUTDTO=Enter the DTO:

IF "%INPUTDTO%"=="" (
      IF "%INPUTDTO%" ??????? (
             GOTO NODTO
      )
)

:NODTO
ECHO ERROR: Please enter a valid DTO.
GOTO INPUT


如何检查用户输入是否以“ DTO”结尾

最佳答案

现有的INPUTDTO值可能应该清除,因为如果用户未输入任何内容,SET / P将保留现有值。

@echo off
set "INPUTDTO="
:INPUT
SET /P INPUTDTO=Enter the DTO:
if "%INPUTDTO:~-3%" neq "DTO" (
  ECHO ERROR: Please enter a valid DTO.
  goto INPUT
)


如果希望比较不区分大小写,请在IF语句中添加/I开关。

关于batch-processing - 如何检查用户输入是否以批处理(.bat)脚本中的特定字符串结尾,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12712905/

10-10 05:30