Как передать команду в качестве аргумента командной строки в пакетном файле - PullRequest
3 голосов
/ 21 мая 2010

Я хочу передать команду в качестве аргумента командной строки из одного пакетного файла в другой.

например. :

first.bat:

call test.bat "echo hello world" "echo welcome "

test.bat:

set initialcommand=%1

set maincommand=%2

%maincommand%

%initialcommand%

1 Ответ

4 голосов
/ 21 мая 2010

Вот что вам нужно:

first.cmd:

@echo off
set maincommand=echo hello world!
call test.cmd %maincommand%

test.cmd:

@echo off
%*

В этом случае first.cmd передает фактическую команду (ваш пример только что передал константу "maincommand", а не ее значение).

Кроме того, test.cmd выполняет команду, состоящую из каждого параметра, а не только первого.

Когда вы создаете эти два файла и выполняете first.cmd, вы получаете:

hello world!

как и ожидалось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...