2011-04-08 33 views
5

Toplu komut dosyalarında koşullu deyimlere sahip olmak mümkün müdür? ÖrneğinToplu iş dosyalarındaki koşullu deyimler

:

iki sunucuları, S1 ve S2.When toplu dosya daha sonra S1 dağıtıldığında çıkış yeri L1 oluşturulmalıdır sahiptir. Benzer şekilde, toplu iş dosyası S2'ye dağıtılmışsa, çıktı L2 konumunda üretilmelidir.

Benim komut dosyası:

set ComputerName=S1 
set RepServer=%ComputerName% 
set DBServer=%ComputerName% 
set ReportPath="/DEV/Clearviewbilling" 
set SharedPath=\\scottvdr1\ClearviewBilling\DEV-TEST 
set UserId=-E 
set fn=Create_Log.txt 

if exist %fn% del %fn% 
@echo on 

@rem Reports 
rs -i "%CD%"\Reports\Create_Sub.rss -s http://%RepServer%/reportserver -v Path=%SharedPath% -v rootpath=%ReportPath% -v DBServer=%DBServer% -t >> %fn% 2>&1 

Ama senaryo olmak istiyorum: Dosya dağıtıldığında

set ComputerName=S1 
set RepServer=%ComputerName% 
set DBServer=%ComputerName% 

If ComputerName=S1 
Set SharedPath=//blah/blah 
else 
Set sharedPath=//some/path 

set ReportPath="/DEV/Clearviewbilling" 
set UserId=-E 
set fn=Create_Log.txt 

if exist %fn% del %fn% 
@echo on 

@rem Reports 
rs -i "%CD%"\Reports\Create_Sub.rss -s http://%RepServer%/reportserver -v Path=%SharedPath% -v rootpath=%ReportPath% -v DBServer=%DBServer% -t >> %fn% 2>&1 

Dolayısıyla, raporlar gerekli yolu oluşturulur. Ama bu çalışmıyor.

cevap

11

Sen :) ... Bu

if "%ComputerName%"=="S1" (
    Set "SharedPath=//blah/blah" 
) else (
    Set "sharedPath=//some/path" 
) 
+0

Çok teşekkürler Jeb çalışmalıdır yanlış if-else sözdizimi

ile S1 karşı dize BilgisayarAdı karşılaştırmak – Iswarya

İlgili konular