Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Textzeile mit 2 Parametern auswerten

Frage Entwicklung Batch & Shell

Mitglied: markus-tausendfreund

markus-tausendfreund (Level 1) - Jetzt verbinden

07.10.2008, aktualisiert 14:20 Uhr, 3898 Aufrufe, 2 Kommentare

Hallo,

vielleicht könnt Ihr mir weiterhelfen ich bin dabei meine Logfiles der XML Im- und Exporte auszuwerten. Grund hierfür sind in einem neuen System Fehler aufzudecken. Ich möchte Zeilen zählen die einen bestimmten Inhalt enthalten die in der Mitte und Ende einen bestimmten Text enthalten.

Das Textfile setzt sich aus folgenden Zeilen zusammen:

20081006 09:58:25:796 - 03836 - INF Inserted address adrId:282092 customerId:I21:I282618 in CSM
20081006 09:58:25:796 - 03836 - INF Inserted address adrId:282092 customerId:I21:I282618 in CSM_NF
20081006 09:58:25:702 - 03836 - INF Reset address adrId:281329 customerId:I21:I282616 in CSM
20081006 09:58:25:702 - 03836 - INF Updated address data adrId:281329 customerId:I21:I282616 in CSM
20081006 09:56:09:592 - 03836 - INF DbUpdateAddress(customer:I21:I273758):the address 2272 is 7, updating
20081006 09:56:09:592 - 03836 - INF Reset adr_imp_timestamp for address adrId:2272 customerId:I21:I273758 in CSM_NF
20081006 09:56:09:592 - 03836 - INF Updated address data adrId:2272 customerId:I21:I273758 in CSM_NF


Hier ein Ausschnitt der Auswertung um die es sich dreht:

@echo off & setlocal
FOR /F "tokens=1,2,3,4 delims=/. " %%a in ('date/T') do set Datum=%%c%%b%%a
set "Quelle=O:\Programme\DM\Log"
set "xc=0"
set "xd=0"


:menue
dir O:\Programme\DM\Log\import*.log
dir O:\Programme\DM\Log\export*.log
Set /p "NRA=ImportNr [000XX] :"
Set /p "NRB=ExportNr [000XX] :"
for /f "delims=" %%s in ('dir /b /od "%Quelle%\import%NRA%.log"') do call :ProcessFile "%Quelle%\%%s"

:ProcessFile
for /f "delims=" %%c in ('findstr /c:"Inserted " %1') do (set /a xc+=1)
for /f "delims=" %%d in ('findstr /c:"Reset " %1') do (set /a xd+=1)

echo updated: %xc%
echo inserted: %xd%

Da ich aber 2 unterschiedliche Fälle habe "CSM" und "CSM_NF" würde ich die gerne getrennt auswerten. Ich muss also nach dem Zeileninhalt "Reset " oder "Inserted " in Kombination mit "CSM" oder "CSM_NF" suchen.

Kann mir da jemand weiterhelfen.
Danke und Gruß
Markus
Mitglied: bastla
07.10.2008 um 14:06 Uhr
Hallo markus-tausendfreund!

Ungetestet etwa so:
01.
for /f "delims=" %%c in ('findstr /c:"Inserted " %1 ^|findstr /e "CSM"') do (set /a xc+=1)
und analog dazu die anderen Kombinationen.

Grüße
bastla
Bitte warten ..
Mitglied: markus-tausendfreund
07.10.2008 um 14:20 Uhr
Herzlichen Dank bastla,

schon nach 3 Minuten ne Antwort darauf zu bekommen. Funktioniert einwandfrei.

Gruß
Markus
Bitte warten ..
Ähnliche Inhalte
RedHat, CentOS, Fedora
gelöst Ausgabe mit IF auswerten (8)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema RedHat, CentOS, Fedora ...

Datenbanken
Laufende Aufträge nach Uhrzeit auswerten (5)

Frage von BirdyB zum Thema Datenbanken ...

Batch & Shell
gelöst CSV Dateien auswerten mit Script (8)

Frage von Crank69 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Administrator.de Feedback

Umgangsformen auf der Seite

Information von Frank zum Thema Administrator.de Feedback ...

Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
gelöst Windows 10 Home "Netzlaufwerk nicht bereit" (19)

Frage von Oggy01 zum Thema Windows 10 ...

Exchange Server
gelöst RU 17 Exchange 2010 . Erfahrungen? (10)

Frage von keine-ahnung zum Thema Exchange Server ...

Windows Server
Festplatten Ruhezustand Windows Server 2016 (10)

Frage von ahaeuser zum Thema Windows Server ...

Datenbanken
gelöst MySQL Zeiterfassungs-Problematik (wer ist eingecheckt) (9)

Frage von NativeMode zum Thema Datenbanken ...