superbios
Goto Top

Bei batch echo von txt abrufen

Moin face-smile

Ich habe probleme mit:

Ich mache ein paar batch scripts, und bin jetzt angelangt bei ECHO von txt datei abrufen.
Gut, etwas schlecht formuliert, da ich ka hab, wie ichs nennen soll:
also z.b.

@echo OFF

ECHO C:\abc.txt

PAUSE
EXIT


Also soll das "ECHO" also der text für das ECHO von der TXT abgerufen wird.
Da für die "scripts" laungedatein verfügbar sein sollen, sollte es so sein:

in der txt datei stehen alle texte drinnen, und die ECHO befehle rufen die von einer ZEILE in der TXT ab....
Ich hoffe, ich habs verständlich formuliert....


LG

Content-Key: 146187

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

Printed on: April 25, 2024 at 15:04 o'clock

Member: rubberman
rubberman Jul 04, 2010 at 17:26:37 (UTC)
Goto Top
Hallo superbios und willkommen im Forum.

Wenn ich dich richtig verstanden habe, möchtest du eine vorher definierte Zeile aus einer Textdatei ausgeben lassen.

C:\abc.txt
Erste Zeile.
Zweite Zeile.
Dritte Zeile.


Wenn du jetzt bspw. die 2. Zeile der Datei ausgeben möchtest, könnte der Batchcode so aussehen:
@echo off &setlocal

set "zeile=2"  

for /f "delims=: tokens=1*" %%a in ('findstr /n . "C:\abc.txt"') do (  
  if "%%a"=="%zeile%" echo %%b  
)

pause

Grüße
rubberman
Member: superbios
superbios Jul 04, 2010 at 17:40:39 (UTC)
Goto Top
Hallo,

Ja, genau das hab ich gemeint.
Wird zwar bei ca. 200 zeilen langen txt datein etwas fad, das alles einzutragen, aber offenbar die einzige lösung.

Danke face-smile
Member: rubberman
rubberman Jul 04, 2010 at 17:58:06 (UTC)
Goto Top
Hallo superbios,

gern geschehen.
Sollten ganze Blöcke aus der Textdatei ausgegeben werden, kannst du auch 2 Bedingungen festlegen. (diesmal mit numerischem Vergleich und Ausgabe von Leerzeilen falls erforderlich)

@echo off &setlocal

set /a vonZeile=2
set /a bisZeile=3

for /f "delims=: tokens=1*" %%a in ('findstr /n "^" "C:\abc.txt"') do (  
  if %%a geq %vonZeile% (
    if %%a leq %bisZeile% echo.%%b
  )
)

pause

Grüße
rubberman
Member: bastla
bastla Jul 04, 2010 at 18:29:03 (UTC)
Goto Top
Hallo superbios und willkommen im Forum!

Mit "findstr" kannst Du Zeilen natürlich nicht nur nach der Zeilennummer, sondern (vor allem) auch nach anderen Merkmalen herausfiltern - gibt es daher ev ein Kriterium dafür, welche Zeile benötigt wird?

Grüße
bastla

P.S.: Vermutlich kommt besser rüber, was Du genau erreichen willst, wenn Du ein konkretes Beispiel anführst ...