2015-12-07 202 views
0

所以我不知道這是否可行,但我希望能夠從外批處理中調用內批處理,能夠使用外部批次在內部批次中設置參數。例如,外部批處理文件具有outerParam1,outerParam2,outerParam3。然後在內部批處理文件中,它將自己的param1,param2,param3設置爲等於外部批處理文件版本。從另一個批處理文件中調用一個批處理,並從外批處理中設置內批處理文件參數

+1

請拍下看看'call /?' –

+0

@ DennisvanGils是的我知道我可以在另一批次內調用批處理,但我想知道如何傳遞正在調用參數的批處理。 – FyreeW

+1

作爲'call /?'告訴你,你可以使用'call somefile.bat%outerParam1%',然後使用'%1'在'somefile.bat中獲取該值' –

回答

2

在批處理文件中,您可以通過簡單地在文件名後面添加帶參數的批處理文件來調用另一批文件。例如,你可以有這樣的事情;

outerbatch.bat:

@echo off 
set "outerParam1=hello world" 
set "outerParam2=!" 
call innerbatch.bat "%outerParam1%" "%outerParam2%" 

innerbatch.bat:

@echo off 
set "param1=%~1" 
set "param2=%~2" 
echo %param1% %param2% 
pause 

這將使innerbatch.bat回聲:

的hello world

+0

工作過,雖然我確實有一個參數有空格在它,這是造成問題。例如,如果參數是「hello world」,它認爲它是「hello」。雖然,這可能是從文本文件中獲取變量的問題。思考? – FyreeW

相關問題