Wie entkomme ich kaufmännisches Und in einer Batchdatei (oder über die Windows-Befehlszeile), um mit dem start
Befehl Webseiten mit kaufmännischem Und in der URL zu öffnen?
Doppelte Anführungszeichen funktionieren nicht mit start
; Dadurch wird stattdessen ein neues Befehlszeilenfenster gestartet.
Update 1 : Die Lösung von Wael Dalloul funktioniert. Wenn die URL URL-codierte Zeichen enthält (z. B. Leerzeichen wird als% 20 codiert) und sich in einer Batchdatei befindet , muss '%' als '%%' codiert werden. Dies ist im Beispiel nicht der Fall.
Beispiel über die Befehlszeile ( CMD.EXE
):
start http://www.google.com/search?client=opera&rls=en&q=escape+ampersand&sourceid=opera&ie=utf-8&oe=utf-8
wird darin enden, dass
http://www.google.com/search?client=opera
wird im Standardbrowser geöffnet und diese Fehler im Befehlszeilenfenster:
'rls' is not recognized as an internal or external command,
operable program or batch file.
'q' is not recognized as an internal or external command,
operable program or batch file.
'sourceid' is not recognized as an internal or external command,
operable program or batch file.
'ie' is not recognized as an internal or external command,
operable program or batch file.
'oe' is not recognized as an internal or external command,
operable program or batch file.
Plattform: Windows XP 64-Bit-SP2.
+
was soll ich vorstellen, um ihm zu entkommen?
start "http://www.google.com/search?client=opera&rls=en&q=escape+ampersand&sourceid=opera&ie=utf-8&oe=utf-8"
funktioniert, weil PowerShell Anführungszeichen entfernt
start
der das Zitieren des Arguments fehlschlägt, wenn es ohne nachzudenken angewendet wird. Insgesamt denke ich, dass es einfacher und weniger fehleranfällig ist, das Argument in Anführungszeichen zu setzen, als jedem Zeichen zu entkommen, das dort entkommen muss.