digitei esta linha em um arquivo bat (pause só para ver o que foi digitado)
start my_program -m y -f %s_%d_fix -z n
pause
acaba rodando isso
start my_program -m y -f d_fix -z n
como você pode ver, a parte% s_% foi removida,
tentei procurar se% causou a leitura das linhas de maneira diferente, mas está tudo bem ao digitar cmd,
o programa iniciado obtém argumentos incorretos, alguma opinião sobre isso? obrigado.
Responder1
Windows Cmd e MS-DOS Command.com são usados %
para indicar variáveis de ambiente. No seu caso, %s_%
é interpretado como uma expansão de variável (com s_
atuação como o nome da variável) e é expandido para uma string vazia.
Para preservar o %
sinal inalterado, use %%s_%%d_fix
.