2011-01-28 26 views
1

這一定很簡單。不幸的是,我也是Batch FOR,CALL:爲什麼我不能將令牌傳遞給我的子程序?

「Filelist.txt中」是的輸出:DIR/B

此代碼的工作:在「Filelist.txt中」每行,預期該行的呼應。

for /F "tokens=*" %%A in (filelist.txt) do echo %%A 

此代碼不起作用:在「Filelist.txt中」每行中,只有VAR名稱爲「%A」的呼應。

for /F "tokens=*" %%A in (filelist.txt) do call :sub1 
goto :eof 
:sub1 
echo %%A 
goto :eof 

我在做什麼錯?提前致謝。

回答

4

嘗試:

@echo off 
for /F "tokens=*" %%A in (filelist.txt) do call :sub1 %%A 
goto :eof 
:sub1 
echo %1 
goto :eof 

你需要你的論點(%%A)傳遞給子程序(arg guide),然後你的子程序內,您可以通過位置(%1)訪問它。

+0

謝謝Rudu!就是這樣。搖滾! – user75900 2011-01-28 18:46:26

相關問題