检查 BAT 文件中的特定字母 [关闭]

Posted

技术标签:

【中文标题】检查 BAT 文件中的特定字母 [关闭]【英文标题】:Checking for a specific letter in a BAT file [closed] 【发布时间】:2021-11-20 20:18:14 【问题描述】:

我只是想找到正确的语法,让 BAT 文件检查特定字母,如果该字母不是有效选择,则出现错误。 我的前三行代码有效,但检查输入的字母是否不是 C 或 R 的语句只会让 BAT 文件退出,而不是出现我的错误。

IF /I "%input%"=="C" goto compile
IF /I "%input%"=="R" goto run
IF /I "%input%"=="" goto error
IF /I "%input%"!="C" goto error
IF /I "%input%"!="R" goto error

请问最后两行代码的正确语法是什么?

【问题讨论】:

在命令提示符窗口中输入if /? 并阅读输出帮助文本... choice /? 可能是更好的选择。 如果您已经在检查变量是否等于CR,检查它是否不是CR 有什么意义?您的代码的第三行可能只是GOTO ERROR 【参考方案1】:

正如另一位用户建议的那样,查看CHOICE https://ss64.com/nt/choice.html

回答您的直接问题:

您需要使用NOT 运算符

IF /I NOT "%input%"=="C" goto error

IF /I "%input%" NEQ "C" goto error

我认为你需要做的只是用你的错误处理替换最后两行,然后goto end 这样如果你到了这一点,那就是一个错误。在:compile:run 标签前添加goto end,以防止错误执行。

IF /I "%input%"=="C" goto compile
IF /I "%input%"=="R" goto run
:error
//handle your error...
goto end
:compile
//handle compile
goto end
:run
//handle run
:end
//handle end

供参考:

https://ss64.com/nt/if.html

【讨论】:

以上是关于检查 BAT 文件中的特定字母 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

检查单元格中的特定字母或一组字母

检查字符串中的一个字符是数字还是字母[Python] [关闭]

如何检查“.bat”文件中的命令行参数?

.bat如何才能后台运行

如何在 iOS 中为特定应用程序打开或关闭“位置服务检查”

Pycharm的代码风格检查:忽略/关闭特定规则