Windows命令行解釋器設有一個FOR命令,這是能夠解析一個給定的命令的輸出和執行循環的輸出的每一行,例如:如何在FOR命令中指定/ D?
FOR /F %%i IN ('DIR .') DO echo %i # Outputs each file name
命令(DIR .
)被執行在通過cmd /C <command> <command-arguments>
的子命令行中,但是,/D
參數未指定......如果用戶具有帶輸出的AutoRun命令(例如,echo或cls),則會導致奇怪的行爲。
有沒有辦法強制FOR通過cmd /C /D <command> <command-arguments>
執行命令?
一個非常簡單的解決方法是使用中間文件而不是命令:DIR。 > DIR.txt'&'FOR/F %% i IN(DIR.txt)DO echo %% i' – Aacini