Как мне пойти на замену всех двойных кавычек в моих параметрах пакетного файла с помощью экранированных двойных кавычек? Это мой текущий командный файл, который расширяет все параметры командной строки внутри строки:
@echo off
call bash --verbose -c "g++-linux-4.1 %*"
Затем он использует эту строку для вызова Cygwin bash, выполняющего кросс-компилятор Linux. К сожалению, я получаю такие параметры, как они, в мой пакетный файл:
"launch-linux-g++.bat" -ftemplate-depth-128 -O3 -finline-functions
-Wno-inline -Wall -DNDEBUG -c
-o "C:\Users\Me\Documents\Testing\SparseLib\bin\Win32\LinuxRelease\hello.o"
"c:\Users\Me\Documents\Testing\SparseLib\SparseLib\hello.cpp"
Если первая цитата вокруг первого пройденного пути преждевременно заканчивается, строка передается в GCC и передается остальным параметрам непосредственно в bash (что не срабатывает эффектно.)
Я предполагаю, что если я смогу конкатенировать параметры в одну строку, а затем убежать от кавычек, она должна работать нормально, но мне сложно определить, как это сделать. Кто-нибудь знает?