Ich habe folgende input.txt Datei:Wie bekomme ich die Ausgabe von zwei For-Schleifen?
tr=min;JohnLoeffler
te=min;TimWalter
Ziel der Batch-Datei I wollen, dass ich geben:
tr min;JohnLoeffler
te min;TimWalter
und die meine Batch-Datei ist:
setlocal EnableDelayedExpansion
for /f "tokens=1,2,3* delims=;" %%a in (E:\input.txt) do (
echo.%%a>current.tok
E:\ProtocoI\%%b
for /f " tokens=* delims= " %%a in (E:\input.txt) do (
call :sub1 %%a
)
GOTO :EOF
:sub1
echo %1 %2
echo.%1 %2; %%b;!RESULT!>>output.txt
)
GOTO :EOF
aber der Ausgang, den ich bekomme, ist:
tr min; %b;
te min; %b;
Beachten Sie, dass ich diese current.tok für die Verwendung in einer weiteren Funktion benötigt und die zweite for-Schleife für das Löschen des gleichen Vorzeichens te = min und tr = min. jetzt weiß ich nicht, wie man mit diesen beiden for loops arbeitet, um die korrekte Ausgabe zu erhalten. Kann mir jemand helfen? Dank in advace, Hoda
': sub1' in einem Block von Code, müssen Sie es außerhalb der Klammern verschieben. – Bloodied
@Arescet Sie meinen außerhalb der Klammern der zweiten for-Schleife? –
Ja, ein Label darf nicht innerhalb einer Schleife oder irgendetwas anderem zwischen Klammern sein. es muss draußen platziert werden. Es wird entweder in einen Syntaxfehler laufen oder sich fehlerhaft verhalten. – Bloodied