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
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
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
1 Kommentar

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