Problem bei FOR-Schleife und Gleichzeichen
Hallo,
gegeben sei folgender Codeschnipsel einer Batchdatei:
Der Inhalt der test.txt lautet wie folgt:
Ich möchte nun jeweils das zweite Token jeder Zeile ausgeben. In der ersten Zeile wäre dies text, in Zeile 2 text==== und in Zeile 3 =========.
Die Ausgabe ist nun wie folgt:
Beim Durchlaufen der ersten und zweiten Zeile der Textdatei funktioniert alles prächtig, bei der letzten Zeile allerdings stört sich die FOR-Schleife anscheinend an den vielen aufeinanderfolgenden Gleichzeichen ohne andere Zwischenzeichen.
Gibt es eine Möglichkeit dennoch eine korrekte Ausgabe zu erhalten, ohne auf Substition der Zeichen zurückgreifen zu müssen?
Gruß,
heny
gegeben sei folgender Codeschnipsel einer Batchdatei:
@echo off
for /f "delims== tokens=1,*" %%a in (test.txt) do echo %%b
pause
Der Inhalt der test.txt lautet wie folgt:
test=text
test2=text====
test3==========
Ich möchte nun jeweils das zweite Token jeder Zeile ausgeben. In der ersten Zeile wäre dies text, in Zeile 2 text==== und in Zeile 3 =========.
Die Ausgabe ist nun wie folgt:
text
text====
ECHO ist ausgeschaltet (OFF).
Drücken Sie eine beliebige Taste . . .
Beim Durchlaufen der ersten und zweiten Zeile der Textdatei funktioniert alles prächtig, bei der letzten Zeile allerdings stört sich die FOR-Schleife anscheinend an den vielen aufeinanderfolgenden Gleichzeichen ohne andere Zwischenzeichen.
Gibt es eine Möglichkeit dennoch eine korrekte Ausgabe zu erhalten, ohne auf Substition der Zeichen zurückgreifen zu müssen?
Gruß,
heny
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 94026
Url: https://administrator.de/contentid/94026
Ausgedruckt am: 22.11.2024 um 22:11 Uhr
1 Kommentar
Moin heny,
Denn die 3. Zeile hat für die implementierte MS$-Token-Zerlegung nur ein Token.
Wir könnten darüber steiten oder lamentieren, ob das die einzige Implementierungslogik ist... aber so ist es nun mal fest verdrahtet.
Auch wenn Du für Deinen Zweck eine andere Ausgabe als "korrekt" empfindest.. in diesem Fall musst Du Dich dem Werkzeug unterordnen und genau diesen Spezialfall mit einer Extra-Substitution lösen.
Grüße
Biber
Gibt es eine Möglichkeit dennoch eine korrekte Ausgabe zu erhalten, ohne auf Substition der Zeichen zurückgreifen zu müssen?
Ohne Substitution wirst Du die gewünschte Ausgabe IMHO nicht erhalten können.Denn die 3. Zeile hat für die implementierte MS$-Token-Zerlegung nur ein Token.
Wir könnten darüber steiten oder lamentieren, ob das die einzige Implementierungslogik ist... aber so ist es nun mal fest verdrahtet.
Auch wenn Du für Deinen Zweck eine andere Ausgabe als "korrekt" empfindest.. in diesem Fall musst Du Dich dem Werkzeug unterordnen und genau diesen Spezialfall mit einer Extra-Substitution lösen.
Grüße
Biber