Мені потрібно передавати ідентифікатор та пароль до пакетного файлу під час запуску, а не жорстко кодувати їх у файлі.
Ось як виглядає командний рядок:
test.cmd admin P@55w0rd > test-log.txt
Ще одна корисна порада - використовувати %*
для позначення "всіх". Наприклад:
echo off
set arg1=%1
set arg2=%2
shift
shift
fake-command /u %arg1% /p %arg2% %*
Коли ви біжите:
test-command admin password foo bar
буде запущено наведений вище командний файл:
fake-command /u admin /p password admin password foo bar
Можливо, синтаксис трохи неправильний, але загальна ідея така.
Так, і просто не забувайте використовувати змінні на кшталт %%1
при використанні if
і for
і банди.
Якщо ви забудете подвійний %
, то ви будете підставляти (можливо, нульові) аргументи командного рядка і отримаєте досить заплутані повідомлення про помилки.