2016-10-21 10 views
1

おそらく単純なコードがありますが、私が必要とするものを特定できないようです。IF条件のバッチに基づいて配列を次の配列にスキップ

私はバッチファイルで配列を持っています&私は条件としてIFステートメントを使用して、コードを継続させたり、配列内の次のものにジャンプさせたいと考えています。 IF条件は、C:ドライブが存在するかどうかを確認するだけです。余分な行を追加しなくても可能ですか?

** **あなたが使用しているFOR /Fコマンドはすべての3台のサーバーを繰り返し処理する必要があり

SET Array[01]=Server1 
SET Array[02]=Server2 
SET Array[03]=Server3 

FOR /F "tokens=2 delims==" %%s in ('SET Array[') do (
IF NOT exist \\%%s\c$ (
    ECHO Server %%s is not reachable & **JUMP TO NEXT IN ARRAY** 
) else (
    **xcopy [source] [destination]**) 
+1

ジャンプは必要ありません、あなたは '') ' – Stephan

答えて

2

sudoのコードです。あなたはジャンプ(goto)はまったく必要ありません。

これはサーバーでうまく動作します。

@echo off 
SET Array[01]=server1 
SET Array[02]=server2 
SET Array[03]=server3 

FOR /F "tokens=2 delims==" %%s in ('SET Array[') do (
    IF NOT exist \\%%s\C$ (
     ECHO Server %%s is not reachable 
    ) else (
     echo xcopy [source] [destination] 
    ) 
) 
pause 
+1

が明確に感謝して、正しくfor'閉じると、あなたのフォーマットでコピーされ、うまくいきました。どこかで構文エラーがあったはずです(私が狂っていなかったことは分かっていました)。 – Sid

関連する問題