我很難獲取在For循環中運行的命令。從命令提示符這工作得很好:批處理 - 在For循環內重定向時出現問題
"C:\Program Files (x86)\MakeMKV\makemkvcon64.exe" -r info | find "E:"
但是,下面好像有語法問題
for /f "tokens=1-7 delims=," %%A in ('"C:\Program Files (x86)\MakeMKV\makemkvcon64.exe" ^-r info ^| find "E:"') do (set _DRVID=%%A)
屈服的錯誤 - C:\Program' is not recognized as an internal or external command, operable program or batch file.
僅供參考,我找到了一種方法得到我想要的結果與以下內容: 我可以得到以下代碼在批處理以及生成所需的輸出:
for /f "tokens=1-7 delims=," %%A in ('"C:\Program Files (x86)\MakeMKV\makemkvcon64.exe" ^-r info') do (IF %%G=="E:" set _DRVID=%%A)
我在做什麼錯?
我在代碼中看不到任何重定向。 – Squashman
它真的是'^ -r',還是它是一個錯字,應該讀'-r'?沒有必要逃脫' - '... – aschipfl
@Squashman,那管道呢?你不認爲如重定向? – aschipfl