因此,我正在尝试使用名为ImageResizer的程序和命令forfiles一次重新缩放一堆图像。

但是由于我必须对命令本身和其中的参数都使用引号,因此无法使用:

ERROR: Argument/Option invalid- '4x /save @FILE'.


如何批量处理这两个字符串?我发现了一些类似的问题,但没有成功。

这是我的代码:

@echo off
cd %~dp0
cd gfx
forfiles /s /m *.png /c "C:\Users\Manu\Desktop\NeuerOrdner\ImageRes.exe /load @FILE /resize auto "XBR 4x" /save @FILE"
pause

最佳答案

this is a bug in forfiles。并且您需要使用0x22对引号进行编码

您可以这样尝试:

@echo off
setlocal
set "path=%path%;C:\Users\Manu\Desktop\NeuerOrdner\"
cd %~dp0
cd gfx
forfiles /s /m *.png /c "ImageRes.exe ImageRes.exe /load @FILE /resize auto 0x22XBR 4x0x22 /save @FILE"
endlocal
pause


要么

@echo off
cd %~dp0
cd gfx
forfiles /s /m *.png /c "C:\Users\Manu\Desktop\NeuerOrdner\ImageRes.exe  /load @FILE /resize auto 0x22XBR 4x0x22 /save @FILE"
pause


imageres.exe后的其他空格)

10-07 14:52