A $ перед одинарными кавычками «...\n ...» следующим образом, однако двойные кавычки не работают.
$ echo $'Hello\nWorld'
Hello
World
$ echo $"Hello\nWorld"
Hello\nWorld
Google в конечном счете придумал ответ. Синтаксис для строковой замены в пакете - это:
set v_myvar=replace me
set v_myvar=%v_myvar:ace=icate%
, Который производит, "копируют меня". Мой сценарий теперь похож на это:
@echo off
set v_params=%*
set v_params=%v_params:"=\"%
call bash -c "g++-linux-4.1 %v_params%"
то, Которое заменяет все экземпляры "
с \"
, правильно вышло для удара.
Символ ESC в сценариях пакетной обработки ^
. Но для дважды заключенных в кавычки строк, дважды кавычки:
"string with an embedded "" character"