У меня есть следующие appcmd
чтобы добавить исключение для ограничений IIS7 ISAPI и CGI. Добавляемое мной исключение должно выглядеть так:
c:\perl\bin\perl.exe "%s" %s
Вот командная строка:
appcmd set config -section:isapiCgiRestriction "-+[path='c:\perl\bin\perl.exe \"%s\" %s', allowed='true', description='Perl CGI']"
Если выполнить это из командной строки, он сделает это правильно, однако если я выполню это внутри .cmd
командный файл, путь искажается и в итоге выглядит так:
c:\perl\bin\perl.exe "s
Проблема, похоже, возникает из-за того, что мне нужно избегать кавычек вокруг первого %s
параметр perl.exe. Но почему это должно вести себя по-другому в пакетном файле, остается загадкой.
Кто-нибудь может объяснить, почему это происходит?
Пакетные переменные Windows должны иметь префикс %
, делая эти %%s