ID in geslo moram posredovati paketni datoteki ob zagonu, namesto da bi ju v datoteko trdno zakodiral.
Tako je videti ukazna vrstica:
test.cmd admin P@55w0rd > test-log.txt
Drug uporaben nasvet je uporaba %*
, ki pomeni "vse". Na primer:
echo off
set arg1=%1
set arg2=%2
shift
shift
fake-command /u %arg1% /p %arg2% %*
Ko zaženete:
test-command admin password foo bar
se bo zagnala zgornja paketna datoteka:
fake-command /u admin /p password admin password foo bar
Morda je sintaksa nekoliko napačna, vendar je to splošna zamisel.
Če želite inteligentno obravnavati manjkajoče parametre, lahko naredite nekaj takega:
IF %1.==. GOTO No1
IF %2.==. GOTO No2
... do stuff...
GOTO End1
:No1
ECHO No param 1
GOTO End1
:No2
ECHO No param 2
GOTO End1
:End1
Ja, in ne pozabite uporabljati spremenljivk, kot je %%1
, ko uporabljate if
, for
in podobno.
Če pozabite na dvojno %
, boste zamenjali (po možnosti ničelne) argumente ukazne vrstice in prejeli nekaj precej zmedenih sporočil o napakah.