Verwendung des Befehls setx in einer Windows-Batchdatei

Ich versuche, eine Windows-Batchdatei zu erstellen, um die Umgebungsvariable automatisch für die Verwendung von Python 2.4 oder Python 3.3 festzulegen.

Sowohl Python 2.4 als auch 3.3 sind auf meinem System installiert. Hier ist mein Code:

::To toggle between Python24 and Python 33
@echo on
if (%PYTHONHOME:~-2%) == "24" (setx PYTHONHOME "C:\Python33" && setx PATH %PATH:Python24=Python33% ) else (setx PYTHONHOME "C:\Python24" && setx PATH %PATH:Python33=Python24% )
pause

Zunächst habe ich PYTHONHOME auf eingestelltC:\Python24

Das obige Skript gibt jedoch den folgenden Fehler aus:

SUCCESS: Specified value was saved.
ERROR: Invalid syntax. Default option is not allowed more than '2' time(s).
Type "SETX /?" for usage.

Mein PYTHONHOME zeigt immer noch auf Python 24 und nichts wird geändert. Der Befehl setx ändert die Umgebungsvariable nicht. Was verursacht diesen Fehler?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage