AFM_Adm 11 Geschrieben 15. Juni 2007 Melden Teilen Geschrieben 15. Juni 2007 Hallo, ich würde gerne per VBS eine .txt nach dem Wort "Error" durchsuchen. Wenn dieses Wort enthalten ist, die Zeile in dem der Error ist, in eine zweite .txt schreiben, so das alle Zeilen, in der das Wort "Error" aus der ersten in die Zweite .txt geschrieben werden. Diese .txt möchte ich dann gerne per smtp verschicken. Ich hoffe ihr könnt mir weiterhelfen. Danke. MFG Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 15. Juni 2007 Melden Teilen Geschrieben 15. Juni 2007 Hi, Hier findest du alles, was du zur SkriptLösung brauchst Microsoft Corporation Zum Versenden suche hier im Forum nach "blat" cu blub Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 15. Juni 2007 Autor Melden Teilen Geschrieben 15. Juni 2007 Achja, dazu kommt noch, das die Datei (ein Fehlerlog) jeden Tag anders heisst, nach dem Format beispiel.log.2007-06-14. MFG Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 15. Juni 2007 Melden Teilen Geschrieben 15. Juni 2007 sowas lässt sich sehr gut skripten. Rühr dich einfach, wenn du an einer Stelle nicht weiterkommst cu blub Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 20. Juni 2007 Autor Melden Teilen Geschrieben 20. Juni 2007 Also das verschicken der Datei per Blat sollte kein Problem sein, aber die Datei erstellen... Da hänge ich gerade dran... Also das Prob ist, das für den Dateinamen des Logs schon eine Datums-Variable benötige, wie kann ich diese definieren? Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 20. Juni 2007 Melden Teilen Geschrieben 20. Juni 2007 schau mal den Link an (dateinfo). Dateinfo musst du noch von den Sonderzeichen bereinigen, am einfachsten mit der vbs-Replace Function Replace Function Danach kannst du Dateinfo an den Dateinamen anhängen, also etwa so strFilename=strFilename & "_"& dateinfo Microsoft Windows 2000 Scripting Guide - Retrieving Current Date and Time Values cu blub Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 22. Juni 2007 Autor Melden Teilen Geschrieben 22. Juni 2007 So, ich hab es jetzt mit Grap und Blat gelöst. Zwei kleine Problemchen habe ich aber noch. Wie kann ich Grep sagen, das er nur eine Fehler-Log erstellt wenn ein bestimmtes Wort in der vorher zu durchsuchenden Datei ist? Also das er wenn er das zu suchenende Wort nicht findet, keine Datei mit keinem Inhalt erstellt. Wie kann ich Blat sagen, das er nur eine Mail verschickt, wenn eine Fehler-Log vorhanden ist!? Danke. MFG Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 26. Juni 2007 Autor Melden Teilen Geschrieben 26. Juni 2007 Hat niemand von euch eine Idee, wie ich Grep sagen kann, das er nur eine Datei bei einem Treffer erstellt und nicht eine ohne Inhalt!? MFG Zitieren Link zu diesem Kommentar
thorgood 10 Geschrieben 26. Juni 2007 Melden Teilen Geschrieben 26. Juni 2007 Hi, bei grep kann ich dir leider nicht helfen. Vielleicht hilft dir findstr weiter. findstr "Error" eingabe.txt>ausgabe.txt sollte dir ein Ergebnis wie grep liefern. Findstr gibt nun eine Errorlevel zurück, 0 wenn etwas gefunden wurde und 1 wenn nicht. if %errorlevel% equ 1 ( del ausgabe.txt ) else ( blat .... was auch immer ) thorgood Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 27. Juni 2007 Autor Melden Teilen Geschrieben 27. Juni 2007 @ thorgood Danke für den Tipp, jetzt hab ich es so, wie ich es haben wollte. Also nochmal einen herzlichen Dank an alle. MFG Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 4. Juli 2007 Autor Melden Teilen Geschrieben 4. Juli 2007 Hallo, eine kleine Sache hätte ich jetzt doch noch! ;) Und zwar möchte ich die Zeile, über der Zeile, in dem das Suchwort steht, mit ausgeben. Momentan wird nur die Zeile, in dem das zu suchenede Wort steht ausgegeben, wie kann ich jetzt die Zeile darüber mit ausgeben? Danke MFG Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 5. Juli 2007 Autor Melden Teilen Geschrieben 5. Juli 2007 Hallo, niemand eine Idee? Danke. MFG Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 17. Juli 2007 Autor Melden Teilen Geschrieben 17. Juli 2007 Hat niemand ne Idee oder einen Ansatz, wie man eine Zeile davor und/oder dahinter mit ausgeben kann? Danke. MFG Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 17. Juli 2007 Melden Teilen Geschrieben 17. Juli 2007 Lies alle Zeilen deines TextFiles in ein Array ein Microsoft Windows 2000 Scripting Guide - Reading Text Files (s. 4.40). Danach kannst du jede Zeile bzw. Arrayelement in einer Schleife analysieren und bei einem Treffer die Elemente Array(i), Array(+1) und Array(-1) ausgeben. cu blub Zitieren Link zu diesem Kommentar
AFM_Adm 11 Geschrieben 17. Juli 2007 Autor Melden Teilen Geschrieben 17. Juli 2007 Hallo, erstmal schönen Dank. Aber ich krieg ist nicht so ganz mit findstr /i error C:\test.txt > C:\test.log kompiliert... Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.