Вопрос

Я хотел бы предоставить необработанный текст, ссылающийся на переменную окружения, команде вместо оценки переменной окружения.

Мне это нужно для настройки BizTalk из командной строки, например:

BTSTask.exe Адрес источника -Имя приложения: App1 -Тип: System.BizTalk:BizTalkAssembly -Перезапись -Источник:..\Schemas\bin\development\App1.Schemas.dll -Destination:%BTAD_InstallDir%\App1.Schemas.dll

Эта команда добавляет ресурс в приложение BizTalk.Я хочу, чтобы местом назначения была %BTAD_InstallDir%\App1.Schemas.dll, однако в настоящее время она оценивает переменную среды (ни к чему) и использует \App1.Schemas.dll.

Можно ли экранировать или отключить вычисление этой переменной окружения во время синтаксического анализа \ выполнения этой команды?

Я попытался экранировать первый и оба процентных символа с помощью моркови (^), однако это не остановило оценку.

[ПРАВИТЬ] Когда я выполняю это в командной строке, это не заменяет переменную среды, однако это происходит, когда я запускаю ее как скрипт, есть какие-нибудь мысли относительно того, почему это отличается?

Это было полезно?

Решение

Вы пробовали:

%%BTAD_InstallDir%%

в вашем сценарии?

Это должно помешать сценарию интерпретировать переменную, и он передаст % BTAD_InstallDir% программе.

Другие советы

Попробуйте echo ^%path^% в командной строке, которую он печатает...

путь

вместо расширения переменной окружения, я думаю, для вас должно сработать следующее, как предложено Mikeage

BTSTask.exe Источник адреса -Имя приложения:App1 -Тип:System.BizTalk:BizTalkAssembly -Перезаписать -Исходный код:..\Schemas\bin\development\App1.Schemas.dll -адресат:^%BTAD_InstallDir^%\App1.Schemas.dll

Попробуйте ^% вместо%.

Пытался:

C:\PrgCmdLine\Unix\echo.exe "%"JAVA_HOME"%"

Получил:

%JAVA_HOME%

[ПРАВИТЬ] Действительно, C:\PrgCmdLine\Unix\echo.exe ^%JAVA_HOME^% тоже работает, но проще...

[ПРАВКА 2] Для протокола:Я использовал echo от UnxUtils, чтобы иметь поведение обычной программы.Встроенное echo имеет несколько иное поведение, по крайней мере, для знаков % в кавычках.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top