我正在尝试制作批处理文件,
此时%ext%类似* .mp3 * .mp4 *。 *。 *。 *
次数 *。重复到最后是未知的(在这种情况下,它重复4次)
所以我做了这样的事情来删除所有*。重复到最后,但似乎没有用。
:extman
echo %ext%
:: setting %extz% as last three %ext% characters
set extz=%ext:~-3%
if "%extz%"==" *." set ext=%ext:~0,-3% & goto extman
if '%errorlevel%'=='1' goto NEXT
:NEXT
echo %ext%
pause > nul
任何帮助都将受到高度赞赏
提前谢谢。
%ext%的所需输出是
*.mp3 *.mp4
答案 0 :(得分:0)
&
之前的空格进入ext
。
解决方案1:删除空格:set ext=%ext:~0,-3%& goto extman
解决方案2:引用作业:set "ext=%ext:~0,-3%" & goto extman
BTW可以缩短代码:
:extman
if "%ext:~-3%"==" *." set "ext=%ext:~0,-3%" & goto extman