我有2個批處理文件。將參數從一個批處理文件傳遞到另一個批處理文件
第一個需要一個輸入參數,它是父文件夾的路徑。它讀取父文件夾內所有子文件夾的名稱,併爲每個子文件夾執行第二批文件。
批處理文件1
@echo off
for /d %%Y in (%1/*) do (
set SubfolderNameAndPath=%%Y
call batch2.bat %SubfolderNameAndPath%
)
第二批文件使用作爲輸入自變量的SubfolderNameAndPath以及所有存在於每個子文件夾中的文件執行一個Evaluate.exe。它將Evaluate.exe的結果保存到文本文件「results」中,其擴展名爲每次訪問子文件夾的名稱。 (results_%~n1.txt
)。
批處理文件2
@echo off
for %%X in (%1/*) do (
echo Evaluate.exe %%X AnotherArgumentHere -o results_%~n1.txt
)
當我運行BATCH1(batch1.bat ParentFolderPath
),即使它似乎調用batch2.bat,不執行batch2.bat。我相信我定義batch2.bat的輸入參數的方式出了問題,但我無法弄清楚它是什麼。
%SubfolderNameAndPath%
不包含任何空格。文件夾的路徑都沒有。 我真的很感激你的幫助。
待辦事項'%SubfolderNameAndPath%'中的任何值在名稱和/或路徑中都有空格? – LittleBobbyTables
@LittleBobbyTables路徑和'%SubfolderNameAndPath%'都不包含任何空格。 – athanell