2012-04-03 8 views
0

CMDスクリプトのヘルプが必要です。ここに私の問題があります:CMDと変数を比較する

私はアイテムのリストを持っていますが、私はSDKの現在のバージョンの例を示す変数もあります。私はこの

for %%A in %CURRENT_VERSION % do (
    if [%%A] grt [%SDK_VERSION%] (
     echo greater. 
    ) 
) 

のようなものを書きたい

set CURRENT_VERSION = 2.3 
set LIST_OF_ITEMS = (4.0.3 2.3.3 2.2) 

はまた、私は今、私はのためにbreakまたはcontinueに何を書き込む必要がありますしたいと思います。

+1

CMDスクリプトはWindows用であり、Android/bashスクリプトとはまったく関係がありません。その構文のようなものはありません。あなたは正確に何をしていますか? – Mat

+0

Windowsスクリプト –

答えて

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 [%CURRENT_VERSION%] gtr [%%A] (
     echo Current version greater %%A. 
     goto continue 
    ) 
) 
echo Current version too low 
goto :EOF 

: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 [%%A] gtr [%CURRENT_VERSION%] (
     echo greater. 
     goto continue 
    ) 
) 
:continue 

はしかし、私はあるべきよう比較は、逆の順序で行われていると思います。これらの数字で正しい結果を得たい場合は、両方とも同じフォーマットでなければなりません。

set CURRENT_VERSION=2.3.0 
関連する問題