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

Frage Entwicklung Batch & Shell

Bestimmte Informationen aus einer XML in eine TXT speichern

Mitglied: LeifuXP

LeifuXP (Level 1) - Jetzt verbinden

21.02.2013 um 12:07 Uhr, 1463 Aufrufe, 3 Kommentare

Ich bin ein wenig am verzweifeln, da ich überhaupt keine Ahnung vom Scripten habe.

Ich habe eine XMl Datei mit Informationen vom Netzwerkrichtlinienserver. Diese werden einmal am Tag gespeichert in eine Datei. Jetzt muss aus dieser Datei eine neue TXT Datei erstellt werden wo aber nur noch die Informationen: Username/IP/MAC und Datum/Uhrzeit gespeichert wird, weil der Rest nicht wichtig ist bzw. das andere Programm damit nichts anfangen kann. Kann mir jemand helfen ?

<Event><Timestamp data_type="4">02/15/2013 11:07:09.580</Timestamp><Computer-Name data_type="1">SRV-D307-01</Computer-Name><Event-Source data_type="1">IAS</Event-Source><NAS-IP-Address data_type="3">172.17.43.105</NAS-IP-Address><NAS-Port data_type="0">0</NAS-Port><Called-Station-Id data_type="1">00-21-29-03-35-20:IT</Called-Station-Id><Calling-Station-Id data_type="1">BC-77-37-B0-1B-44</Calling-Station-Id><Framed-MTU data_type="0">1400</Framed-MTU><NAS-Port-Type data_type="0">19</NAS-Port-Type><Connect-Info data_type="1">CONNECT 0Mbps 802.11g</Connect-Info><Client-IP-Address data_type="3">172.17.43.105</Client-IP-Address><Client-Vendor data_type="0">9</Client-Vendor><Client-Friendly-Name data_type="1">CISCO-AP-D310</Client-Friendly-Name><User-Name data_type="1">schöps</User-Name><Proxy-Policy-Name data_type="1">Use Windows authentication for all users</Proxy-Policy-Name><Provider-Type data_type="0">1</Provider-Type><SAM-Account-Name data_type="1">IT\testuser</SAM-Account-Name><Class data_type="1">311 1 172.17.43.90 01/13/2013 02:23:18 86614</Class><Authentication-Type data_type="0">5</Authentication-Type><NP-Policy-Name data_type="1">wlanabfrage</NP-Policy-Name><Fully-Qualifed-User-Name data_type="1">it.local/Schueler/ITA_0/Hendrick Test</Fully-Qualifed-User-Name><Quarantine-Update-Non-Compliant data_type="0">1</Quarantine-Update-Non-Compliant><Packet-Type data_type="0">1</Packet-Type><Reason-Code data_type="0">0</Reason-Code></Event>


Und von diesen Events stehen ganz viele in dieser Datei.

Danke für die Hilfe im Vorraus !
Mitglied: 64748
21.02.2013 um 12:45 Uhr
Hallo,

das kann man mit jeder Skriptsprache machen. Es gibt auch Module, die XML parsen und verarbeiten können, die stehen für jede Skriptsprache zur Verfügung.

Ich mache solche Sachen mit Perl.

Wie sind denn Deine Kenntnisse?
Welche Programmiersprachen kannst Du?
Hast Du Vorgaben hinsichtlich der zu verwendenden Werkzeuge?

Ach ja, ist das wirklich alles ohne Zeilenumbruch?

Markus
Bitte warten ..
Mitglied: 64748
21.02.2013, aktualisiert um 13:27 Uhr
Das folgende Skript ist mal ein Anfang.

01.
#!/usr/bin/perl 
02.
 
03.
use strict ; 
04.
use warnings ; 
05.
use feature 'say' ; 
06.
 
07.
my $data ; 
08.
 
09.
open XML, "$ARGV[0]" ; 
10.
$/ = "</Event>" ; 
11.
foreach $data ( <XML> ) { 
12.
        $data =~ m/<Timestamp[^>]+[>](.+)<\/Time[^>]+[>]/ && say $1 ; 
13.
        $data =~ m/<User[^>]+[>](.+)<\/User[^>]+[>]/ && say $1 ; 
14.
        $data =~ m/<NAS\-IP[^>]+[>](.+)<\/NAS\-IP[^>]+[>]/ && say $1 ; 
15.
        $data =~ m/<Called-Station-Id[^>]+[>](.+)<\/Called[^>]+[>]/ && say $1 ; 
16.
17.
 
18.
close XML ;
Am besten auf einem Linuxrechner ausprobieren.
./skriptname dateiname.xml
auf der Kommandozeile.
der Ausdruck "</Event>" ist Zeilentrenner, damit werden die Daten zwischen <Event> und </Event> als ein Datensatz genommen.

Markus
Bitte warten ..
Mitglied: rubberman
21.02.2013 um 21:31 Uhr
Hallo LeifuXP,

magst du etwas mehr über den Aufbau der Datei erklären? Welche XML-Deklaration befindet sich am Anfang der Datei? Kannst du den Pfad nennen, unter dem alle Event-Knoten zu finden sind? Welche Scripttypen kannst du ausführen (Betriebssystem)?
Ggf. wird es dann per "Document Object Model" ganz einfach an die Daten zu kommen.

Grüße
rubberman
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Mittels Batch bestimmte Information aus unbekannter Textdatei auslesen und in XML-Datei schreiben
gelöst Frage von tardezyxBatch & Shell3 Kommentare

Hallo, es sind innerhalb eines Verzeichnisses sehr viele Unterordner vorhanden, in denen sich jeweils eine Textdatei befindet, deren Strukturen ...

Microsoft
Letzte Login-Informationen aus AD lesen und in einer .txt-file speichern
Frage von staybbMicrosoft2 Kommentare

Hallo, ich weiß das es soetwas schon gibt. Leider finde ich es nicht mehr oder finde nur Lösungen, in ...

Entwicklung
Aus einer XML-Datei mehrere Daten auslesen und in einer bestimmten Syntax in eine Excel-Datei speichern
gelöst Frage von LocXarEntwicklung2 Kommentare

Guten Tag, ich habe hier eine xml datei (ausschnitt am ende meines Posts) in der Daten aus einer Datenbank ...

Batch & Shell
Powershell bestimmtes XML Element entfernen
gelöst Frage von H41mSh1C0RBatch & Shell4 Kommentare

Hi@PS Profi's, ich versuche gerade ein bestimmtes XML Element zu löschen mit dem Attibute name=Test. Hier kommt er mit ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 6 StundenLinux1 Kommentar

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 TagTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 TagSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 1 TagSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit23 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
gelöst Frage von Windows10GegnerNetzwerkgrundlagen22 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...

Netzwerke
Packet loss bei "InternetLeitungsvollauslastung"
gelöst Frage von Freak-On-SiliconNetzwerke17 Kommentare

Servus; Ja der Titel klingt komisch, is aber so. Wenn die Internetleitung voll ausgelastet ist, hab ich extreme packet ...

Ubuntu
Ubuntu - Starter für nicht vertrauenswürdige Anwendungen
Frage von adm2015Ubuntu17 Kommentare

Hallo zusammen, Ich verwende derzeit die Ubuntu Versionen 17.10 bzw. im Test 18.04. Ich habe mehrere .desktop Dateien in ...