2012-09-11 24 views
23

iç ya da dış komut, çalıştırılabilir program ya da toplu iş dosyası olarak tanınmıyor ama foloowing hatayı alıyorum:'else' ı "Başka" komutuyla kullanmayı deneyin

'başka' bir olarak kabul edilmez iç veya dış komut, çalıştırılabilir program veya toplu iş dosyası.

Benim kodudur:

if "zz"=="TRUE" (
     copy /a zz + /a ee=/a zz 
    ) 
    else (
     copy /a e + /a %TMP%=/a e 
    ) 

Ne sorunu?

+1

Korktuğum dili tanımıyorum (bu yüzden kendi başıma düzenleyemiyorum), tanıdık kullanıcıları çekmek için bir etiket ekleyebilir misiniz? – amit

+0

"else" basitçe tanınmayabilir çünkü bunlar dile özgüdür - hangi dili, hangi ortamı kullandığınızı belirtmezsiniz –

cevap

51

else(a)'un if ile aynı olması gerekir. şöyle else önce yeni hattını çıkarın:

if "zz"=="TRUE" (
    copy /a zz + /a ee=/a zz 
) else (
    copy /a e + /a %TMP%=/a e 
) 

da "zz"=="TRUE"true için değerlendirmek asla unutmayın - Sana "%zz%"=="TRUE" demek şüpheli?


(a): Microsoft belgeleri kullandığım şey olsa bu, her zaman iyi bir tanım değil. Aynı komutu daha iyi olabilir ve ) ve else'u farklı bir satıra koymak, iki komutuna bölünür.

+3

Bu, "aynı satır" deyiminin oldukça liberal bir yorumudur, ancak cmd'den beklediğim şeydir Oldukça mükemmel ifadeler değilse :-), doğru cevap için +1. – paxdiablo

+0

@paxdiablo Bu en iyi kelime öbeği değil, doğrudan "IF /?" Özellikle, "ELSE yan tümcesi, IF'den sonra komutla aynı satırda olmalıdır." ve sonra yukarıdaki kodla hemen hemen aynı bir örnek verir. Söylediğiniz gibi, toplu olarak kurs için;) –

+1

Bu öğleden sonra birkaç bira aldım olsa da, biraz daha net yapmaya çalıştım - Daha kötüsü yapmış olabilir :-) Bunu kontrol etmek isteyebilirsiniz . – paxdiablo

İlgili konular