uuwwee

Fehlendes Zeichen nach "FOR-Schleife" DOS

Hallo zusammen,
ich habe folgendes Problem:

Ich habe eine FOR-Schleife in meiner batch:

for /F "Tokens=* delims='%quelle%\'" %%i in ("%name%") do set name=%%i

In der Ausgabe siehts dann so aus:
for /F "Tokens=* delims='\\UWE_BUERO\Export\'" %i in ("\\UWE_BUERO\Export\BWMDA030.STA") do set name=%i
set name=MDA030.STA


Ich verstehe nicht, warum bei "set name" ein Buchstabe(B) abgeschnitten wird?

Wenn ich das ganze mit relativen Pfaden mache, funktionierts ?!?!

Kann mir jemand Helfen?

Gruß

Uwe
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 636047

Url: https://administrator.de/forum/fehlendes-zeichen-nach-for-schleife-dos-636047.html

Ausgedruckt am: 04.05.2025 um 15:05 Uhr

147069
Lösung 147069 28.12.2020 aktualisiert um 17:54:11 Uhr
Goto Top
Hi.
Ich verstehe nicht, warum bei "set name" ein Buchstabe(B) abgeschnitten wird?
Der Grund ist das bei der FoR-Schleife in den delims alle angegebenen Zeichen einzeln als Trenner interpretiert werden nicht als ganzes! Und darunter sind bei dir auch das B und das W face-wink.

Btw. das was du da machst ist auch Bullsh... . Das was du willst geht viel einfacher so
@echo off
for /f "usebackq delims=" %%a in ("\\UWE_BUERO\Export\BWMDA030.STA") do set "name=%%~nxa"  
echo %name%
Oder wenn die Datei auch tatsächlich auf dem System erreichbar, geht auch
@echo off
for %%a in ("\\UWE_BUERO\Export\BWMDA030.STA") do set "name=%%~nxa"  
echo %name%
Ein for /? in die Konsole eingetippt sagt dir warum und erklärt dir die oben verwendeten Parameter ...

Gruß bw.