oscarspatz
Goto Top

per Batch die Umgebungsvariable in Teile aufteilen?

Hallo!
ich schreibe gerade an einer kleinen Installationsroutine für unseren Betrieb. Bin auf folgendes Problem gestossen:
In eine Umgebungsvariable ist ein Pfad gesetzt, in dem auch ein Leerzeichen auftaucht - z.B. Umgebungsvariable lautet: "TEST" und ist mit "D:\start\ich hier\" belegt. Nun wollte ich in den Ordner "ich hier" wechseln. Mit "cd %TEST%" klappt das ja noch, aber wenn ich mich auf einem anderen Laufwerk befinde, kann ich nicht mit "%TEST%" dahin wechseln, er hört quasi bei dem Freizeichen auf und sucht immer den Ordner "D:\start\ich". Was ich bräuchste, wäre quasi das Laufwerk, welches in der Umgebunsvariablen TEST steht - hier "d:". Wie komm ich denn da dran?????
Das Grund, warum ich das Laufwerk nicht 100% kenne, ist der, dass der Ordner "\start\ich hier" auf verschiedenen Rechner auf unterschiedlichen Laufwerken liegt. Daher dieser kleiner Umstand - hoffe mich hat einer verstanden und kann mir auch helfen....

Danke

Content-Key: 19925

Url: https://administrator.de/contentid/19925

Printed on: April 26, 2024 at 03:04 o'clock

Member: Biber
Biber Nov 18, 2005 at 14:01:50 (UTC)
Goto Top
Moin, oskarspatz,
.. "in Teile aufteilen" gefällt mir als Formulierung.. ist ja fast schon ein Rap..

Also, erst die Antwort auf die Frage, dann die Begründung, warum Du diese Lösung gar nicht brauchst.
Antwort auf die Frage:
Set Test=D:\start\ich hier
Set LaufwerkvonTest=%test:~0,2%
.. dann hat %LaufwerkvonTest% den Wert "D:"
~~~~~~~~

Das Aber:
Aber wozu? Du kannst sowohl mit dem CD-Befehl wie auch mit PushD/PopD Laufwerk und Verzeichnis wechseln.

a) cd /D "%TEST%" ...... wechselt in Dein Verzeichnis D:\start\ich hier
b) da man/frau ohnehin beim Wechseln von Laufwerken/Verzeichnissen im Batch oder anderen Programmen immer den Zustand vorher wiederherstellt, nimm doch gleich PushD/PopD:
PushD %test%
... (mach mir den Install)
...
PopD
~~~

Thats all. Grüße
Biber