Windows Batch. An die Umgebungsvariable PATH anhängen, wenn sie Leerzeichen enthält

Windows Batch. An die Umgebungsvariable PATH anhängen, wenn sie Leerzeichen enthält

Ich möchte einige Binärdateien zum Pfad für meine Konsolensitzung hinzufügen und mache das so

if not defined WIXTOOLKIT_IN_PATH (
    set WIXTOOLKIT_IN_PATH=1
    set MY_PATH=%~dp0..\tools\wix
    SET PATH=%MY_PATH%;%PATH%
)

Aber es passiert, dass mein PATH Leerzeichen enthält und ich bekomme eine Meldung \Skype\Phone\ was unexpected at this time.mit set PATHdem Befehl echo

                                SET PATH=;C:\Python34\;C:\Python34\Scripts;C:\ProgramData\
Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\Sy
stem32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Pr
ogram Files (x86)\Skype\Phone\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Pr
ogram Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files (x86)\Mic
rosoft SDKs\TypeScript\1.0\;C:\Program Files (x86)\CMake\bin

Ich bin sicher, dass dies eine banale Situation ist, aber ich konnte keine Lösung finden. Wie kann ich das Problem beheben?

Antwort1

Mein PATH enthält Leerzeichen und ich erhalte die Meldung ... war zu diesem Zeitpunkt unerwartet

Sie müssen die festzulegenden Argumente in Anführungszeichen setzen.

Ersetzen:

SET PATH=%MY_PATH%;%PATH%

Mit:

SET "PATH=%MY_PATH%;%PATH%"

Weitere Informationen

  • Ein AZ-Index der Windows CMD-Befehlszeile- Ein hervorragendes Nachschlagewerk zu allem, was mit der Windows-Eingabeaufforderung zu tun hat.
  • Satz- CMD-Umgebungsvariablen anzeigen, festlegen oder entfernen. Mit SET vorgenommene Änderungen bleiben nur für die Dauer der aktuellen CMD-Sitzung bestehen.

verwandte Informationen