soritose
Goto Top

Per batch eine log datei auslesen und betimte zeile ausgeben

hallo

ich versuche seit einigen tagen eine log Datei aus zu lesen und nur ein bestimmte Bereich von einer ziele aus zu geben

FOR /F "tokens=1-7 delims=" %%A IN ('C:\Windows\System32\findstr.exe /E /L /C:"%datei%" D:\Neuer\test.log') DO (
call set "var1=%%A"
call set "var2=%%B"
call set "var3=%%C"
call set "var4=%%D"
call set "var5=%%E"
call set "var6=%%F"
)

er macht nur die 1 ziele der log findet aber 6 zeilen

die log sieht so aus
Datum Urzeit|Name|2name|3name|Datei


und sobald | komme bricht er ab

kann die log auch nicht ändern da das Programm durchgehen lauft

windows ist das os

Content-Key: 227756

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

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

Member: bastla
bastla Jan 25, 2014 at 19:30:24 (UTC)
Goto Top
Hallo soritose!

Hast Du es schon mit
FOR /F "tokens=1-7 delims=|" %%A IN ('C:\Windows\System32\findstr.exe /E /L /C:"%datei%" D:\Neuer\test.log') DO (
versucht?

BTW: Was soll denn dann weiter passieren, und wie sieht so eine Zeile konkret aus?

Grüße
bastla
Member: Endoro
Endoro Jan 27, 2014 at 11:09:20 (UTC)
Goto Top
Hey,

call set ist unnötig, set genügt. Ohne Delimiter kannst du nur maximal ein Token erhalten:
FOR /F "tokens=1-7 delims=|" %%A IN ('findstr.exe /E /L /C:"%datei%" D:\Neuer\test.log') DO (   
Ganze Sätze und strukturiertes Fragen verbessern Lesbarkeit, Verständnis und fördern die Antwortqualität.
Gruss.
Member: soritose
soritose Feb 12, 2014 at 22:28:48 (UTC)
Goto Top
danke euch beiden

bis jest geht alles nur jest habe ich vollzogenes Problem

nur ist das Problem das er in der log Datei 1 bis 6 zielen hat wo es die klicke Datei ist, nur mit 6 andienen Namen
beispiel
Datum Urzeit|anja|2name|3name|job-15.zib
Datum Urzeit|daniel|2name|3name|job-15.zib
Datum Urzeit|alf|2name|3name|job-15.zib
Datum Urzeit|hants|2name|3name|job-15.zib

bei der suche gibt er nur die lestze suche aus
hants job-15.zib


kann man igen wie in der suche ein 2 variabel eingeben das er nach den genauen Bereich sucht
FOR /F "tokens=1-7 delims=|" %%A IN ('findstr.exe /E /L /C:"%variabel1% %variabel2%" D:\Neuer\test.log') DO (
so get das leider nicht da gibt er mir nur das aus
D:\Neuer\test.log:variabel1
Member: bastla
bastla Feb 12, 2014 at 22:50:00 (UTC)
Goto Top
Hallo soritose!

Das müsste eher so aussehen:
FOR /F "tokens=1-7 delims=|" %%A IN ('findstr.exe /E /L /C:"%variabel1%" /C:"%variabel2%" D:\Neuer\test.log') DO (
Grüße
bastla
Member: soritose
soritose Feb 13, 2014 at 22:33:48 (UTC)
Goto Top
danke bastla

aber leider hilft mir das nicht so richtig

auch mit den 2 variabel gibt er mir 6 zielen aus aber ich kann nur die leste auslesen

gibt es da nicht eine andere Methode
Beispiel ich suche die Datei und er gibt mir alle 3 bis 6 zielen aus wo er die Datei findet und schreib sie in eine neue txt ( alle 4 bis 6 zielen )
dann lasse ich mit der suche den Namen suche und so habe ich die ziele die ich brauche
Member: bastla
bastla Feb 13, 2014 at 22:40:59 (UTC)
Goto Top
Hallo soritose!

Du solltest etwas mehr von Deinem Batch posten - was willst Du denn genau erreichen?

Ansonsten: Nur die passenden Zeilen in eine neue Datei zu schreiben könntest Du etwa so versuchen:
findstr /E /L /C:"%variabel1%" /C:"%variabel2%" D:\Neuer\test.log > D:\Neuer\Neu.txt
Grüße
bastla
Member: Endoro
Endoro Feb 13, 2014 at 23:29:25 (UTC)
Goto Top
Hey, do you speak english?
Member: Biber
Biber Feb 14, 2014 updated at 08:38:04 (UTC)
Goto Top
[OT] @ soritose
Zitat von @Endoro:

Hey, do you speak english?
... and if so, can you ask Siri or S-Voice to write your next comment?

Many of us are using this feature.

Siri on behalf of Biber
[/OT]
Member: soritose
soritose Feb 14, 2014 at 09:27:46 (UTC)
Goto Top
danke bastla
auf das leichteste kommt man selber nicht
das reicht mir schon

hallo Endoro
nein ich spreche kein Englisch