2017-10-05 20 views
1

バッチコマンドで値を取得するために "set"とfor-loopを使用しようとしています。forループを使用してバッチファイルで 'SET'変数を取得する方法は?

set A=123,456 

@for /f "delims=," %%i in ("%A%") do (
    echo %%i 

) 

結果は次のようになるはずです。私はstackoverflowの中でこの問題を見てきた

123 
456 

しかし、それは唯一の123 :(

は、バッチファイルで「SET」変数を取得するために、forループを使用することはできあります示して?

PSと重複した質問がある場合は何も同様の質問がありません。 私に感謝を教えてください!! ^^

+0

あなたは '/ F'ループ用を誤って解釈するように見える:それは複数のトークンにテキストの行を分割することが可能であるが、これらは反復処理されていない、トークンがで返されます複数のループ変数( '%% i'、' %% j'など)によって提供されるオプション文字列に依存します。詳細については、[FOR/F](http://ss64.com/nt/for_f.html)を参照してください... – aschipfl

答えて

2

使用してみてください:

@echo off 
@setlocal enabledelayedexpansion 

set a=123,456,789 
:a 
for /f "delims=," %%i in ("%a%") do (
    echo %%i 
    set a=!a:%%i=! 
    goto a 
) 
3

はシンプルfor

を使用します
+0

これは、私が提出する予定だった私のために働いたものです – Brettski

+0

応答のためにありがとう、 私は欲しい「123,456」ではなく「123」および「456」。 – betty

+4

これは、 'for'ステートメントの代わりに投稿したコードをカットアンドペーストすると得られるものです。 – Magoo

関連する問題