6

Sadece toplu iş programlaması için çok yeni ve çözümü çevrimiçi bulmaya çalıştım ancak başarısız oldum. Toplu iş dosyam, programa kendi komut satırı bağımsız değişkenlerini ileten bir c programı çağırır ve ardından dördüncü argümanın değerine bağlı olan (bir tamsayıdır) sonraki adımları yapar. % 4'ün 3'e eşit olması durumunda yığın dosyamda fazladan bir adım atmak istiyorum. Bazı eko testi ifadeleri yerleştirdim. Ama dördüncü argümanım olarak 3'e girsem bile sadece "testno" basılır.Windows toplu iş dosyaları: komut satırı bağımsız değişkenini tamsayı olarak nasıl karşılaştırılır


Toplu dosya adı:


@echo off 
@setlocal 
p2task1 %1 %2 %3 %4 
start mi_viewer %1 
start mi_viewer %2 
echo %4 
echo 3 
If ("%4"== "3") (echo testyes) Else (echo testno) 
echo testif 

Komut istemi anlık:


Toplu dosya kodu p2debug1234.bat


H:\ELEC4622\labs\data>p2debug1234 pens_rgb.bmp test.bmp 2 3 

3 
3 
testno 
testif 

bana geçerli bir karşılaştırma yardımcı olun.

Saygılarımızla, Julia

+1

gerçekten ms-dos seni kullanıyor musunuz? Yoksa pencereleri kullanıyor musun? Eğer öyleyse, bunun ms-dos ile hiçbir ilgisi yoktur (bu, komut istemini değil, işletim sisteminin bir adıdır). – joojaa

+0

Pencereleri kullanıyorum, haklısınız. Afedersiniz. – user2851154

+0

Sadece windows'un sadece MS-DOS'u genişleten bir yazılım olduğunu düşündüm. Oldukça eminim ki (bellekten) ile başlamaktı. Ama sanırım bu daha sonraki Windows sürümlerinde artık geçerli değil. – user2851154

cevap

10

değiştirme hattı:

If ("%4"== "3") (echo testyes) Else (echo testno) 

için:

If "%4"=="3" (echo testyes) Else (echo testno) 
+0

Çok teşekkür ederim - mükemmel çalışıyor. – user2851154

+2

Oy vermeli ve cevapları kabul etmelisiniz. Yığın taşmasına teşekkür etmenin yolu budur. Bunlardan hiçbirini yapmamak yığın taşması fikrini kırmaz. – joojaa

+0

Bunu nasıl yapacağından emin değilim. Ben şimdiye kadar bu yerde hiç yayınlamadım – user2851154