2015-07-10 3 views
2

Как мне передать следующие параметры в пакетный файл?Передача параметров с апострофами в командный файл

custom.bat mode="test" logs="true" 

Я попытался удвоить ", но ничего не помогало.

+1

Следует упомянуть, что вы не можете изменить файл 'custom.bat'. И вы должны объяснить, что вы ожидаете от custom.bat, чтобы обрабатывать ваши параметры и показывать код, который извлекает параметры. – jeb

ответ

1
custom.bat "mode="test"" "logs="true"" 

И, в custom.bat удалить ненужные кавычки

@echo off 
    set "arg1=%~1" 
    set "arg2=%~2" 

    echo [%arg1%] [%arg2%] 
+0

Я не могу изменить приложение custom.bat ... Есть ли другой способ ... как написать свой собственный файл bat, вызывающий costom.bat? –

+0

@devhedgehog, если вы не можете изменить командный файл, можете ли вы опубликовать образец того, как обрабатывать аргументы? –

-1

Вы можете использовать команду CALL, чтобы начать новый пакетный файл. После выполнения последней строки «вызываемого файла» элемент управления вернется в «вызывающий файл». Вы можете установить параметры в «вызываемый .bat fie», используя либо простую строку, либо переменную.
например.
ВЫЗОВ MyScript.bat "1234"
или
SET _MyVar = "1234"
ВЫЗОВ MyScript.bat% _MyVar%

В качестве меры предосторожности, вы можете использовать SETLOCAL & Endlocal сохранить разделение между переменными же -name среди разных файлов.

+1

Спасибо, но где здесь объяснение, как использовать апостроф? –

+0

Я предполагаю, что вы имеете в виду двойные кавычки («), когда вы указываете апостроф. Если вы отправляете параметры напрямую, то вы используете их в двойных кавычках. В противном случае, если вы используете переменную, вы используете двойные кавычки чтобы установить его значение. Однако в этом случае вам не нужно вставлять имя переменной (при прохождении как параметр) в кавычки. Оно должно быть заключено внутри% Hope, это помогает. Я прошу вас отменить «понижение «; так как я пытаюсь помочь вам решить вашу проблему. –

+0

Вы можете получить дополнительную информацию о команде CALL (которую вы можете использовать для передачи параметров из одного файла в другой) по адресу https://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ call.mspx? произв = истина –