Eu preciso passar um ID e uma senha para um arquivo de lote no momento da execução, em vez de codificá-los no arquivo.
Aqui's como é a linha de comando:
test.cmd admin P@55w0rd > test-log.txt
Outra dica útil é utilizar %*
para significar "todos". Por exemplo:
echo off
set arg1=%1
set arg2=%2
shift
shift
fake-command /u %arg1% /p %arg2% %*
Quando você corre:
test-command admin password foo bar
o arquivo de lote acima será executado:
fake-command /u admin /p password admin password foo bar
Eu posso ter a sintaxe ligeiramente errada, mas esta é a ideia geral.
Sim, e não se esqueça de utilizar variáveis como %%1
quando utilizar if
e for
e a gangue.
Se você esquecer o duplo %
, então você estará substituindo em (possivelmente nulo) argumentos de linha de comando e você receberá algumas mensagens de erro bastante confusas.