如何用转义的双引号替换批处理文件参数中的所有双引号?这是我当前的批处理文件,它扩展了字符串中的所有命令行参数:
@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 (这个过程失败得非常引人注目)
我想如果我可以将参数连接到一个单独的字符串中,然后转义引号,那么应该没问题,但是我很难确定如何做到这一点。有人知道吗?