superjota
Goto Top

Varaible inerhalb eines Batch ändern

Hallo,
ich habe ein Problem. ich möchte eine von außen erhaltene variable abändern. Wie kann man das machen?

z.b.
Ich habe diese variable mit folgenden Inhalt

Set Pfadkomplett="Z:\DXF-IGES-Step\xxx14-0 EURO (bla bla)"

und muss eine Variable ohne die Gänse fuschen erstellen
Z:\DXF-IGES-Step\xxx14-0 EURO (bla bla)

Ich dachte mir ich nutze den Befehl "FOR tokens" aber ich bin da nicht weiter gekommen

Content-Key: 232191

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

Printed on: April 16, 2024 at 07:04 o'clock

Member: bastla
bastla Mar 10, 2014 updated at 15:56:57 (UTC)
Goto Top
Hallo Superjota!

Woher hast Du denn die Variable? Anhow - versuch es so:
for %%i in (%Pfadkomplett%) do set "PfadkomplettOhne=%%~i"
- und sieh Dir gelegentlich mal for /? (vor allem gegen Ende) an ...

Grüße
bastla
Member: rubberman
rubberman Mar 10, 2014 at 17:11:45 (UTC)
Goto Top
Hallo Superjota.

ich möchte eine von außen erhaltene variable abändern
Das wirft, wie bei bastla, auch bei mir Fragezeichen auf. Sollte die Batchdatei mit diesem Pfad als Argument aufgerufen werden, dann wäre ein
set "Pfadkomplett=%~1"  
das Mittel der Wahl.

Ich dachte mir ich nutze den Befehl "FOR tokens"
Den gibt es so nicht. Aber (alternativ zu bastlas Vorschlag) wäre auch ein FOR /F denkbar.
setlocal EnableDelayedExpansion
for /f "delims=" %%i in ("!Pfadkomplett!") do (  
  endlocal
  set "Pfadkomplett=%%~i"  
)
Grüße
rubberman
Member: Endoro
Endoro Mar 10, 2014 at 19:29:45 (UTC)
Goto Top
Hey,
Set Pfadkomplett="Z:\DXF-IGES-Step\xxx14-0 EURO (bla bla)"  
Set "Pfadkomplett=%Pfadkomplett:~1,-1%"  
echo %Pfadkomplett%
Gruss, Endoro.
Member: Superjota
Superjota Mar 11, 2014 at 14:10:10 (UTC)
Goto Top
Danke an alle für die schnelle und promte hilfe. Habe so mein grosses problem gelösst face-smile