我有一个处理删除文件的 for 循环,但我最近遇到了一个文件名包含的文件&
,我得到一个错误& was unexpected at this time
. 所以我不确定它为什么这样做,我把它用引号括起来。
文件名示例:[This_&_That]_FileName.txt
小例子:
FOR /F "tokens=* delims=;" %%P in ("%*") do call :LOOP %%P
:LOOP
if '%1'=='' goto :endloop
echo %1
pause
....
:endloop
exit
这适用于空格,但&
它会崩溃的符号。我必须cmd
使用文件名作为参数运行 .bat 文件才能看到错误。
我已经尝试启用延迟扩展 - 就像在这篇文章中一样,要么我没有正确执行它,要么它对我不起作用:stackoverflow post