I found the issue. I am using the script for a batch file which is generated by the GUI. The script converted an & to hex with two %, like this %%26. Apparently, only one % is needed. When I removed the extra %, the batch file worked.
Can you tell us how did you generate that script?
WinSCP uses two %, when generating a batch file only (in a batch file two % are needed). But not when generating a script file - what you are using.
Haven't you copied the
command from a generated batch file into a WinSCP script file?