CMD verschachtelten Anführungszeichen im argument

Ich habe Probleme mit dem übergeben von Argumenten an eine batch-Funktion mit geschachtelten Anführungszeichen.

Hier ist ein Beispiel einer batch-Datei:

@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

Ausgabe:

arg 1: blaat1
arg 2: blaat2 "c:\test\filenamewith
arg 3: space.txt""

Was sollte ich tun, um arg 2: blaat2 "c:\test\filenamewith space.txt"?
Beachten Sie, dass kann ich nicht einstellen, die Funktion oder ändern Sie die %path_with_space%. Ich kann nur kontrollieren, was an die Funktion übergeben wird.

Schreibe einen Kommentar