
Wie kann ich den Wert einer Umgebungsvariablen in eine andere Umgebungsvariable kopieren? Ich aktualisiere ein DOS-Batchskript für die Verwendung unter Windows XP. Angenommen, ich habe die Umgebungsvariable FOO
, die enthält some\file\path
, und ich muss eine genaue Kopie dieser Datei in der Umgebungsvariable erstellen BAR
. Wie wird das erreicht?
Die Variable FOO
ist wie folgt eingerichtet:
setx FOO %MY_ROOT%\irgendein\Datei\Pfad
Wie erreiche ich BAR
Gleichheit FOO
, indem ich nur referenziere FOO
?
Antwort1
Setx BAR %FOO%
Bei SETX müssen Sie allerdings vorsichtig sein, da es die festgelegten Variablen nicht auf das aktuelle CMD-Fenster anwendet.
Sie müssten also eine CMD öffnen, ausführen Setx FOO path
, das aktuelle CMD-Fenster verlassen und/oder ein neues öffnen. Dann wird %FOO% wirksam und Sie können FOO dann mit BAR zuweisen Setx BAR %FOO%
.
Sie können verwenden, Set
um Variablen zuzuweisen, die in der aktuellen CMD-Sitzung sofort funktionieren, aber der Gültigkeitsbereich von Set erstreckt sich nur auf die aktuelle CMD-Sitzung, daher müssen Sie möglicherweise eine Kombination aus beidem verwenden.