簡體   English   中英

如何成功回復For循環到批處理腳本?

[英]How do I Successfully Echo a For Loop Into a Batch Script?

echo for /f "delims=" %%%i in ^(^'DIR /A -H /B^'^) do set "check^=^^!check^^!,"%%%i"" >> Uninstall.cmd

結果是

for /f "delims=" %%i"" 

原始代碼我試圖回應Uninstall.cmd

for /f "delims=" %%i in ('DIR /A -H /B') do set "check=!check!,"%%i""

任何人都可以幫我弄清楚如何讓這行代碼完全轉義,以便它可以輸出到文件?

如果您沒有啟用延遲擴展

echo for /f "delims=" %%%%i in ('DIR /A-H /B') do set "check=!check!,"%%%%i""

如果啟用了延遲擴展,則需要轉義感嘆號

echo for /f "delims=" %%%%i in ('DIR /A-H /B') do set "check=^!check^!,"%%%%i""

但是,如果代碼在塊內執行,則右括號也需要進行轉義

if 1==1 (
    echo for /f "delims=" %%%%i in ('DIR /A-H /B'^) do set "check=!check!,"%%%%i""

    :: OR

    echo for /f "delims=" %%%%i in ('DIR /A-H /B'^) do set "check=^!check^!,"%%%%i""
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM