pipel1n3
Goto Top

Einlesen aller Zeilen einer Textdatei

Hi habe schon alle bisherigen Beiträge zu diesem Thema durchgelesen wurde aber aus keinem schlau bzw. hat auch nichts funktioniert.

Ich hab eine textdatei mit unformatiertem inhalt (Links)
Also z.b.:

http://adresse.de/link1
http://adresse.de/link2

Jetzt will ich per Batch diese einzelnen Links (1 Link pro Zeile voraussgesetzt face-smile ) als Variable weiterverarbeiten.
Wenn ich
FOR /f %%f IN (%systemdrive%\%zahl%.txt) do @set link1=%%f
nehme dann gibt er mit immer den Letzen Link\ die letze Zeile aus, er soll aber die erste ausgeben.
danach sollte mit einem anderen befehl die nächste Zeile ausgelesen werden . usw. dann

Hoffe jemand kann mir schnell helfen (mach mir da keine sorgen, hier wird man echt immer schnell geholfen face-smile )
Gruss |L1n3

Content-Key: 60804

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

Printed on: April 23, 2024 at 11:04 o'clock

Member: miniversum
miniversum Jun 07, 2007 at 14:31:09 (UTC)
Goto Top
Die For-Schleife kannst du so verwenden:
FOR /f %%f IN (%systemdrive%\%zahl%.txt) do call :machwas %%f
goto:eof

:machwas
set link=%1
REM ...
REM ...
REM mach hier irgentwas z.b.echo
echo %link%
REM ...
REM ...
goto:eof

In das machwas schreibst du dann rein was du mit dem Link tun willst (hier z.b. einfach nur ausgeben). So wird jeder Link nach einander verarbeitet.

miniversum
Member: PipeL1n3
PipeL1n3 Jun 07, 2007 at 22:26:33 (UTC)
Goto Top
FOR /f %%f IN (%systemdrive%\%zahl%.txt) do call :machwas %%f
habe das einfach in
FOR /f %%f IN (%systemdrive%\%zahl%.txt) do echo %%f
geändert.
Mehr brauche ich schon garnicht.
Die weiteren Batch befehle sind mit weitgehend bekannt, allerdings war mir früher nie klar das der befehl "For" eine schleife darstellt .. im nachhinein aber logisch face-smile
Vielen Dank für deine Hilfe