Sonderzeichen in Batch-Datei

Sonderzeichen in batch Dateien sind ein Schmerz, aber ich habe noch nicht das richtige gefunden Abhilfe für die korrekte Flucht der ersten beiden Zeichen, die in diesem bestimmten string, den ich versuche zu pass-Anwendung.

SET pass=^&AntiBatchfileString
A_Program.exe /pass=%pass%

Dinge, die ich versucht habe:

:: Escaping the escape twice, first for ^, second for &.
SET pass=^^^^&AntiBatchfileString
echo %pass%

:: Combining escapes.
SET first=^^
SET second=^^&AntiBatchfileString
SET pass=%first%%second%
echo %pass%

:: Preventing expansion
SET first=^^
SET second=^^&AntiBatchfileString
SET pass=!first!%second%
echo %pass%

:: I got this to print correctly
SET "pass=^&AntiBatchfileString"
echo ^^%pass%

Immer noch beim passieren der letzten, es nimmt nicht den login, ich weiß nicht, was die Letzte Ausgabe ist. Das hat mir zu denken vielleicht, es wurde versucht zu tun, ein weiterer ausbau bei der übergabe der parameter an die Anwendung, so zitierte ich das auch.

SET "pass=^&AntiBatchfileString"
A_Program.exe "/pass=^^%pass%"

Funktioniert es immer noch nicht, ich bin mir nicht sicher, was mir fehlt an dieser Stelle.

Mögliche Duplikate von Stapel-Zeichen-escaping

InformationsquelleAutor Matthew Rhoden | 2016-05-19

Schreibe einen Kommentar