我需要CMD脚本的帮助。这是我的问题:
我有项目列表,我也有变量显示例如当前版本的SDK。
set CURRENT_VERSION = 2.3
set LIST_OF_ITEMS = (4.0.3 2.3.3 2.2)
我想写这样的东西
for %%A in %CURRENT_VERSION % do (
if [%%A] grt [%SDK_VERSION%] (
echo greater.
)
)
此外,我现在想要写入break
或continue
的内容。
答案 0 :(得分:1)
这段代码几乎和你写的一样,但是有效。
set CURRENT_VERSION=2.3
set LIST_OF_ITEMS=4.0.3 2.3.3 2.2
for %%A in (%LIST_OF_ITEMS%) do (
if [%%A] gtr [%CURRENT_VERSION%] (
echo greater.
goto continue
)
)
:continue
但是,我认为比较是按相反的顺序进行的,所以它应该是:
set CURRENT_VERSION=2.3
set LIST_OF_ITEMS=4.0.3 2.3.3 2.2
for %%A in (%LIST_OF_ITEMS%) do (
if [%CURRENT_VERSION%] gtr [%%A] (
echo Current version greater %%A.
goto continue
)
)
echo Current version too low
goto :EOF
:continue
请注意,版本号与类似字符串进行比较。如果你想用这些数字得到正确的结果,那么它们必须具有相同的格式;那就是:
set CURRENT_VERSION=2.3.0