我用這個批處理文件test.bat的簽名:逃生和批處理命令行參數
setlocal EnableDelayedExpansion
set var=%*
md "c:\testfolder\!var!"
這運行正常此類似「test.bat的這是一個測試」,但當特殊字符用於它不行。所以「test.bat test & go」只創建文件夾「c:\ testfolder \ test」。如何逃避所有特殊字符?
我試過使用test.bat「this a & test」,但是當我回顯!var!那麼它與雙引號相呼應,我不希望那樣。
你嘗試'設置 「VAR =%*」'? – Endoro
@Endoro,剛剛嘗試過,不起作用! – Mbrouwer88
請不要忘記在命令行中轉義一些字符,否則會得到獨立於批處理的語法錯誤。選中它並在你的批處理中加入'echo「%*」'。 – Endoro