Supportnet / Forum / Anwendungen(Java,C++...)
[Batch] Auslesen aus einer .txt und weiterverarbeiten
Frage
hi @ all
ich habe mal wieder ein problem .... diesmal etwas anderes ...
und zwar:
ich rufe e-mails über batch ab ... udn speichere diese als *.txt ab
aus dieser *.txt möchte ich eine spezielle zeile auslesen, die betreffszeile.
dies habe ich wie folgt gelöst --->
[code]
for /f "skip=2 tokens=*" %%i in (´find /i "Subject" email.txt´) do (echo "%%i" >> ergebnis.txt )
[/code]
durch dieses auslesen steht jetzt zum beispiel
---> "subject: testing ..." <--- in der ergebnis.txt
nun soll folgendes passieren ...
die anführungszeichen vor dem wort subject udn nach den drei punkten sollen weg.
des weiteren soll das wort subject und der : (doppelpunkt weg
wie muss ich das amchen
nächstes problem
ich will das erbegnis nach verschiedenen wörtern duchsuchen udn diese in verschiedene variablen schreiben
wie?
danke im voraus
anglerbonzo
Antwort 1 von TheBlackBird_
Hi,
Erstmal soweit, was die Ausgabe in Deine ergebnis.txt betrifft:
Du willst die Anfuehrungszeichen wegbekommen? Du schreibst sie doch selbst in die Ausgabe. (...echo "%%i"...) Wenn Du sie dort weglaesst, sollten sie auch nicht in Deiner ergebnis.txt auftauchen.
Du suchst mittels find nach "Subject". (Dies sollte bei gleichbleibender Behandlung entweder gross oder klein geschrieben sein-> Schalter /i kann daher imo entfallen.)
Du ueberspringst die ersten beiden Zeilen der Ausgabe mittels skip=2. Nun aber packst Du mittels tokens=* und der Angabe von %%i die komplette Zeile in %%i und gibst diese somit auch in die Augabeumleitung. Verwende hier z.B. tokens=2* in Verbindung mit %%i und %%j. Damit wird alles bis zu ersten Trennzeichen (Space oder Tab (in Deinem Fall also "Subject: ")) uebersprungen, alles bis zum naechsten Trennzeichen (also das erste Wort der eigentlichen SubjectZeile) in %%i und der Rest der Zeile in %%j an die Ausgabe weitergegeben. Deine FOR-Schleife koennte also folgendermassen aussehen:
Was Du nun mit nach verschiedenen wörtern duchsuchen udn diese in verschiedene variablen schreiben meinst, musst Du mal naeher beschreiben, oder an ein zwei Beispielen veranschaulichen.
Cu TheBlackBird ®
Erstmal soweit, was die Ausgabe in Deine ergebnis.txt betrifft:
Du willst die Anfuehrungszeichen wegbekommen? Du schreibst sie doch selbst in die Ausgabe. (...echo "%%i"...) Wenn Du sie dort weglaesst, sollten sie auch nicht in Deiner ergebnis.txt auftauchen.
Du suchst mittels find nach "Subject". (Dies sollte bei gleichbleibender Behandlung entweder gross oder klein geschrieben sein-> Schalter /i kann daher imo entfallen.)
Du ueberspringst die ersten beiden Zeilen der Ausgabe mittels skip=2. Nun aber packst Du mittels tokens=* und der Angabe von %%i die komplette Zeile in %%i und gibst diese somit auch in die Augabeumleitung. Verwende hier z.B. tokens=2* in Verbindung mit %%i und %%j. Damit wird alles bis zu ersten Trennzeichen (Space oder Tab (in Deinem Fall also "Subject: ")) uebersprungen, alles bis zum naechsten Trennzeichen (also das erste Wort der eigentlichen SubjectZeile) in %%i und der Rest der Zeile in %%j an die Ausgabe weitergegeben. Deine FOR-Schleife koennte also folgendermassen aussehen:
for /f "skip=2 tokens=2*" %%i in (´find "Subject" email.txt´ ) do echo %%i %%j>> ergebnis.txt
Was Du nun mit nach verschiedenen wörtern duchsuchen udn diese in verschiedene variablen schreiben meinst, musst Du mal naeher beschreiben, oder an ein zwei Beispielen veranschaulichen.
Cu TheBlackBird ®
Antwort 2 von anglerbonzo
hi
ich danke dir erstmal für deine hilfe
werde es heute direkt nach der arbeit testen ....
melde mich danach nochmal
also wenn zum beispiel "send" oder "get" (nur bsp) im subject steht ... soll er eine batch datei auf der hdd ausführen
danke
anglerbonzo
ich danke dir erstmal für deine hilfe
werde es heute direkt nach der arbeit testen ....
melde mich danach nochmal
Zitat:
Was Du nun mit nach verschiedenen wörtern duchsuchen udn diese in verschiedene variablen schreiben meinst, musst Du mal naeher beschreiben, oder an ein zwei Beispielen veranschaulichen.
Was Du nun mit nach verschiedenen wörtern duchsuchen udn diese in verschiedene variablen schreiben meinst, musst Du mal naeher beschreiben, oder an ein zwei Beispielen veranschaulichen.
also wenn zum beispiel "send" oder "get" (nur bsp) im subject steht ... soll er eine batch datei auf der hdd ausführen
danke
anglerbonzo