2012-01-06 289 views
53

我有一组变量,允许一些与之合作的人员进行编辑。这些值为True(T)和False(F)的值,但我有些人坚持要分别使用tf而不是大写字母值。Windows批处理命令忽略变量中的区分大小写

我用以下解决方法的代码正确设置大写的值:但是

IF '%dotnet35%'=='f' set dotnet35=F 
IF '%dotnet35%'=='t' set dotnet35=T 
IF '%dotnet40%'=='f' set dotnet40=F 
IF '%dotnet40%'=='t' set dotnet40=T 
IF '%regedit%'=='f' set regedit=F 
IF '%regedit%'=='t' set regedit=T 
IF '%SSL%'=='f' set SSL=F 
IF '%SSL%'=='t' set SSL=T 

这是十分笨重,而且它不容易对眼睛...有没有这样做,而不使用VBS或任何其他方式任何其他编程语言?

回答

107

阅读HELP IF/I开关,如果指定,说做不区分大小写的字符串比较。 /I交换机也可用于IF的string1 == string2表格 。

因此请尝试IF /I %SSL%==F ...