Experimente %%
, por exemplo for %%f
em vez de for %f
, que pode funcionar Em arquivos em lote, você precisa usar for %%f
em vez de for %f
O for %f
é somente para a linha de comando. Alterar todas as referências, então suponho %%~zA
em vez de %~zA
Você deveria realmente ter solucionado problemas e tentado até mesmo um simples loop, como for %a in (*.*) do @ECHO %a
você perceberia que ele também funcionava na linha de comando e não em um arquivo de lote e talvez você tivesse descoberto o %% exigência.