Top-Themen

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

Inhalt von meheren Log-Dateien zusammenführen (an gewisse Zeilen)

Frage Entwicklung Batch & Shell

Mitglied: SaschaRD

SaschaRD (Level 1) - Jetzt verbinden

11.07.2013 um 13:21 Uhr, 2410 Aufrufe, 6 Kommentare

Hallo zusammen,

ich habe ein Problemchen und hoffe jemand hat eine Lösung für mich.

Ich habe über Batchskripte die Installation einer Software (Client, Server etc.) automatisiert (die täglich neu gebaut wird (daily build)). Hierbei ruft das Vater Batchskript, Kinder Batchskripte auf. Das Vater Batchskript erzeugt 2-Log-Dateien und jedes Kind Batchskript jeweils 2-Log-Dateien.

Nach Durchlauf der Batchskripte wird eine E-Mail generiert und mir zugesandt. Dabei möchte ich gern den Dateien Anhang auf 2-Log-Dateien minimieren. Den Inhalt der Kind Log-Dateien möchte ich gern in die Vater Log-Dateien kopieren, dies habe ich mit:

copy copy_process%DATE%.log /b process_%DATE%.log

durchgeführt. Der Inhalt wird jedoch an die letzten Zeile der Vater Log-Datei mit angehangen

Beispiel aus copy_process.log:

start copy process: 11.07.2013:
10:56:24,59: copy Client
10:56:44,82: Client successful copied
10:56:44,84: copy Server
10:57:41,59: Server successful copied
10:57:41,59: copy CLI
11:00:39,95: CLI successful copied
11:00:39,95: copy Runtime
11:04:40,83: Runtime successful copied

Was ich jedoch gern möchte ist den Inhalt aus den Kind Log-Dateien in gewisse Zeilen kopieren, damit ist das Lesen der unterschiedlichen Installationsschritte wesentlich einfacher.

Beispiel process.log (Vater Log-Datei):

prepare daily build installation: 11.07.2013:
10:56:24,15: check daily build version: 11.07.2013 server - 11.07.2013 client are equal
10:56:24,39: delete local daily build data
10:56:24,56: local daily build data successful deleted
daily build installation successful prepared.

Der Inhalt aus copy_process.log müsste zwischen Zeile 4 und 5 kopiert werden usw.

Wäre super wenn jemand eine Lösung für mein Problemchen hat.

Vielen Dank im Voraus.

Gruß, Sascha


Mitglied: 76109
11.07.2013 um 13:59 Uhr
Hallo SaschaRD!

Um das Ganze etwas zu vereinfachen, wäre es eventuell sinnvoll, an den betreffenden Stellen in der Vater.Log Platzhalter in der Form 'reserved copy_procress.log' mit reinzuschreiben...

Gruß Dieter
Bitte warten ..
Mitglied: andimue
11.07.2013 um 14:40 Uhr
Hallo,

wenn es dir möglich wäre bei allen Zeilen im Vater- und Kind-log vorne eine Uhrzeit reinzuschreiben könntest du später alle Zeilen einfach zusammenkopieren und anschliessend sortieren.

Gruß
Andi
Bitte warten ..
Mitglied: Endoro
11.07.2013 um 14:48 Uhr
Zitat von SaschaRD:
Wäre super wenn jemand eine Lösung für mein Problemchen hat.

Hallo Sascha,
klar ist das zu machen. Ist aber aufwendig.
Wäre mir nix für batch.

lg
Bitte warten ..
Mitglied: pieh-ejdsch
11.07.2013 um 15:05 Uhr
moin Sascha,

ich würde den Hauptbatch anpassen:

01.
 rem Bis Hierhin zum Start der 1.Sub 
02.
call "%~dp0Sub1.cmd" 
03.
copy copy_process%DATE%.log /b process_%DATE%.log 
04.
 rem Dann weiter im Script
Gruß Phil
Bitte warten ..
Mitglied: SaschaRD
11.07.2013 um 15:49 Uhr
Ha! Verdammte Axt...

Habe es soeben eingebaut und es funktioniert! So simple! Den Gedanken muss man aber erst mal haben!

Ich möchte recht herzlich bei allen bedanken für Ihre Antworten.

Im Vater Batchskript wurde nachdem Aufruf des Kindes:
copy /b %LOGFILE%+%COPYPRO% %LOGFILE%
eingefügt.

Das Resultat sieht dann so aus:
prepare daily build installation: 11.07.2013:
15:38:39,06: daily build version: 11.07.2013 server and 11.07.2013 local are equal
15:38:39,31: delete local daily build data
15:38:39,72: local daily build data successful deleted
start copy process: 11.07.2013:
15:38:39,77: copy Client
15:38:58,02: Client successful copied
15:38:58,02: copy Server
15:39:39,78: Server successful copied
15:39:39,78: copy CLI
15:40:32,34: CLI successful copied
15:40:32,34: copy Runtime
15:41:27,56: Runtime successful copied
daily build installation successful prepared.

Unglaublich ... ich war schon dabei eine For-Schleife zu basteln ^_^

Herzlichen Dank nochmal..
Bitte warten ..
Mitglied: Endoro
11.07.2013, aktualisiert um 17:35 Uhr
Zitat von SaschaRD:
Unglaublich ... ich war schon dabei eine For-Schleife zu basteln ^_^

Das hab ich mal gemacht, es ging leichter als gedacht und ist durch die viele findstr Regex furchtbar langsam.
Ich klebe es mal hier rein, zur Warnung an spätere Generationen

01.
@ECHO OFF &SETLOCAL 
02.
SET "mainlog=main.log" 
03.
SET "childlogs=??.log" 
04.
 
05.
FOR %%a IN ("%childlogs%") DO ( 
06.
	SET "ftime=" 
07.
	FOR /f "tokens=1-3delims=:" %%b IN ('findstr "^[0-2][0-9]:[0-5][0-9]:[0-5][0-9],[0-9][0-9]:" "%%~a"') DO ( 
08.
		IF NOT DEFINED ftime ( 
09.
			SET "$%%b:%%c:%%d=%%a" 
10.
			SET "ftime=%%a" 
11.
12.
13.
14.
FOR /f "delims=" %%a IN ('findstr /n "^" "%mainlog%"') DO ( 
15.
	SET "line=%%a" 
16.
	SETLOCAL ENABLEDELAYEDEXPANSION 
17.
	SET "line=!line:*:=!" 
18.
	CALL :doline 
19.
	FOR /f "tokens=1*delims==" %%x IN ('SET "$"') DO (IF NOT "!"=="" ENDLOCAL)&SET "%%x=%%y" 
20.
21.
goto:eof 
22.
 
23.
:doline 
24.
SETLOCAL ENABLEDELAYEDEXPANSION 
25.
ECHO("!line!"|findstr "^.[0-2][0-9]:[0-5][0-9]:[0-5][0-9],[0-9][0-9]:" >nul|| (echo(!line!&goto:eof) 
26.
FOR /f "tokens=1-3delims=:" %%b IN ("!line!") DO SET "ltime=%%b:%%c:%%d" 
27.
FOR /f "tokens=1*delims=$=" %%a IN ('set "$"') DO ( 
28.
	IF "%ltime%" gtr "%%a" IF NOT "%%b"=="0" ( 
29.
		< "%%~b" MORE 
30.
		SET "$%%a=0" 
31.
32.
33.
ECHO(!line! 
34.
FOR /f "tokens=1*delims==" %%a IN ('SET "$"') DO (IF "!"=="" ENDLOCAL)&SET "%%a=%%b" 
35.
goto:eof
lg
Bitte warten ..
Ähnliche Inhalte
Windows Server
Zwei oder mehere GPOs zu einer zusammenführen
gelöst Frage von smartinoWindows Server2 Kommentare

Hallo, historisch gewachsen gibt es hier zu viele GPOs, die ich gerne der Übersichtlichkeit halber teilweise zusammenführen würde. Zwar ...

Internet
Gewisse Inhalte sperren
Frage von PlantbutcherInternet16 Kommentare

Ich weiß nicht, ob das Thema schon irgendwo angesprochen wurde. Habe dazu aber nichts gefunden Folgendes Problem habe ich ...

Batch & Shell
Löschen von Dateien und gewisse Dateien ausschließen
gelöst Frage von tommhiiBatch & Shell4 Kommentare

Hallo, ich kopiere mittels batch Dateien von einen Ordner ( Eingang) in einen anderen Ordner (Ausgang) dabei schließe ich ...

Batch & Shell
BATCH - Zeile(n) aus Log-Datei in eine Archiv-Datei nur wenn nicht vorhanden einlesen
gelöst Frage von BlattlausOGBatch & Shell18 Kommentare

Hallo, dieser Einzeiler fügt mir Zeile für Zeile den Inhalt von d:\log in d:\archiv.txt untereinander ein. Was muss geändert ...

Neue Wissensbeiträge
Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 17 StundenViren und Trojaner1 Kommentar

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 21 StundenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Heiß diskutierte Inhalte
Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Vmware
DOS 6.22 in VMWare mit CD-ROM
gelöst Frage von hesperVmware10 Kommentare

Hallo zusammen! Ich hab ein saublödes Problem. Es ist eine VMWare mit DOS 6.22 zu erstellen auf dem ein ...

Cloud-Dienste
PIM als SaaS Nutzungsgebühr
Frage von vanTastCloud-Dienste8 Kommentare

Moin, wir haben uns ein PIM (Product Information Management) nach unseren Ansprüchen für viel Geld als SaaS-Lösung bauen lassen. ...