CMD anidado comillas dobles en el argumento
Tengo problemas para pasar argumentos a una función de lote con comillas dobles anidadas.
Aquí hay un ejemplo de un archivo por lotes:
@SET path_with_space="c:\test\filenamewith space.txt"
@CALL :FUNCTION blaat1, "blaat2 %path_with_space%"
@GOTO :EOF
:FUNCTION
@echo off
echo arg 1: %~1
echo arg 2: %~2
echo arg 3: %~3
GOTO :EOF
La salida es:
arg 1: blaat1
arg 2: blaat2 "c:\test\filenamewith
arg 3: space.txt""
¿Qué debo hacer para hacerarg 2: blaat2 "c:\test\filenamewith space.txt"
? Tenga en cuenta que no puedo ajustar la función o cambiar la%path_with_space%
. Solo puedo controlar lo que se pasa a la función.