2012-03-20 70 views
1

我試圖使用下面的代碼將默認值設置爲%1%2和%3,但是當我嘗試使用它們時,出現意外的行爲,%1,% 2和%3是零如何更改批處理腳本中的參數值

腳本:

'IF [%1]==[] (
     SET /P isDefault=Value Missing, do you want to use default values 1,1,10?[y/n] 
     IF %isDefault%==y (
      SET 1=1 
      SET 2=1 
      SET 3=10 
    GOTO :CREATE 
    ) 
:CREATE 
FOR /L %%A IN (%1,%2,%3) DO (
    netsh interface ipv4 add address "Local Area Connection 2" 169.254.89.%%A 255.255.0.0 
)' 

回答

2

我懷疑的命令行的變量(如%1,%2使用作爲其替代)不允許進行修改。而是使用中間變量:

IF .. 
     set var1=1 
     set var2=1 
     GOTO :CREATE 
)  

set var1=%1 
set var2=%2 

:CREATE 
+0

我正在寫類似的東西:),但無法讓ECHO獲得dos的中間變量。 – 2012-03-20 15:16:17

相關問題