Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Mehrere txt Dateien nach mehreren Variablen (Variablen-Pool) durchsuchen und inschließend die Zeilen mit der entsprechenden Variable in eine neue .txt Datein schreiben in VBScript

Frage Entwicklung VB for Applications

Mitglied: PortableApes

PortableApes (Level 1) - Jetzt verbinden

13.02.2009, aktualisiert 08:57 Uhr, 6352 Aufrufe, 5 Kommentare

Hallo und Guten Morgen,

ich habe in einem bestimmten Ordner mehrere .log Files die ich nach bestimmten Fehlern durchsuchen darf. Daher möchte ich diese zeilenweise auslesen lassen und die komplette Zeile mit dem Argument in eine neue .txt Datei schreiben lassen.

Teilweise wurde dieses Thema in anderer Variante bereits behandelt. Ich habe eben nur das Problem, dass ich mehrere Variablen habe: Fehler, Problem, abgebrochen, etc...

Wie bekomme ich das unter einen Hut ?

Danke mal im Vorraus
Mitglied: bastla
13.02.2009 um 12:09 Uhr
Hallo PortableApes und willkommen im Forum!

Für diese Anforderung würde ich eher Batch als VBS verwenden - das könnte (ungetestet) so aussehen:
01.
@echo off & setlocal 
02.
set "Ordner=D:\Deine Logs" 
03.
set "Typ=log" 
04.
set "Liste=D:\Fehlerliste.txt" 
05.
set "Erg=D:\Errors.txt" 
06.
 
07.
if exist "%Erg%" del "%Erg%" 
08.
for %%i in ("%Ordner%\*.%Typ%") do >>"%Erg%" findstr /i /g:"%Liste%" "%%i"
Die Datei "Fehlerliste.txt" müsste einfach je Zeile einen Suchbegriff beinhalten, also:
Fehler 
Problem 
abgebrochen 
etc
Grüße
bastla
Bitte warten ..
Mitglied: PortableApes
13.02.2009 um 17:00 Uhr
Danke ersteinmal bastla.
Leider habe ich keine Wahl. Ist eine Scripterweiterung in VBS und der Urheber des alten Scripts lässt mich daran zerbrechen...
Habe mal die case Fuunktion in´s Auge gefasst.

Hast du mir dazu evtl. ein Bsp. ?
Bitte warten ..
Mitglied: bastla
13.02.2009 um 17:51 Uhr
Hallo PortableApes!

Dann etwa so:
01.
InDir = "D:\Deine Logs" 
02.
InExt = "log" 'Dateityp in Kleinbuchstaben 
03.
OutFile = "D:\Errors.txt" 
04.
ErrorMessages = Array("Fehler", "Problem", "abgebrochen", "etc") ' Liste der Fehlermeldungen 
05.
 
06.
Set fso = CreateObject("Scripting.FileSystemObject") 
07.
 
08.
Set I = fso.GetFolder(InDir) 
09.
Set E = fso.CreateTextFile(OutFile, True) 'Ausgabedatei erstellen (ev bestehende Datei überschreiben) 
10.
 
11.
For Each File In I.Files 'Alle Dateien des Log-Ordners durchgehen ... 
12.
    If LCase(fso.GetExtensionName(File)) = InExt Then ' ... und wenn vom vorgegebenen Typ ... 
13.
        T = Split(File.OpenAsTextStream.ReadAll, vbCrLF) ' ... den Dateiinhalt zeilenweise in ein Array einlesen 
14.
        U = Ubound(T) 
15.
        For i = 0 To U ' Alle Zeilen des Textes durchgehen ... 
16.
            For Each ErrMsg In ErrorMessages ' ... und jeweils mit allen Fehlermeldungen vergleichen 
17.
                If InStr(1, T(i), ErrMsg, vbTextCompare) > 0 Then ' Wenn eine Fehlermeldung in der Zeile enthalten ist ... 
18.
                    E.WriteLine T(i) ' ... Zeile in die Ausgabedatei schreiben und .... 
19.
                    Exit For '.... Überprüfung beenden (Zeile erledigt). 
20.
                End If 
21.
            Next 
22.
        Next 
23.
    End If 
24.
Next 
25.
E.Close
Errorhandling kannst Du sicher selbst ergänzen (etwa Überprüfung, ob der Log-Ordner - siehe Zeile 8 - vorhanden ist, etc) ...

Grüße
bastla
Bitte warten ..
Mitglied: PortableApes
13.02.2009 um 19:04 Uhr
Danke Dir bastla werde mich ausgiebig damit beschäftigen ist ja Wochenende. ;)
Hab auch schon ein 300 Zeilen Script.


Hurra es wird Frühling ! Jetzt gibt wieder LAN Parties im Freien.
Bitte warten ..
Mitglied: PortableApes
16.02.2009 um 08:25 Uhr
Danke Bastla,

ein wenig Anpassung und es hat funktioniert.
Muss jetzt nur noch feineinstellungen vornehmen.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von 126594 zum Thema Batch & Shell ...

PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Batch & Shell
gelöst Mit zusammengesetzter Variable auf andere Variable zugreifen (2)

Frage von abiber zum Thema Batch & Shell ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (31)

Frage von McLion zum Thema Router & Routing ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (24)

Frage von ahstax zum Thema Visual Studio ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Windows Netzwerk
Netzwerk Neustrukturierung (15)

Frage von IT-Dreamer zum Thema Windows Netzwerk ...