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

Inhalt einer Datei als Tabelle einlesen

Frage Entwicklung Batch & Shell

Mitglied: SmogKiel

SmogKiel (Level 1) - Jetzt verbinden

17.02.2015, aktualisiert 19.02.2015, 675 Aufrufe, 2 Kommentare, 1 Danke

Hallo,

ich möchte gerne eine Datei zeilenweise einlesen und als Tabelle speichern. Hat jemand eine Idee wie das funktioniert?
Aus der Ereignisanzeige werden Werte ausgelesen und diese dann als DATEI gespeichert:

DATEI __________________________________
ID: 213
MachineName : T1.FIXXXX.local
TimeCreated : 30.01.2015 23:19:54
Message : TEST
Reihe2 und mehr

ID: 213
MachineName : T1.FIXXXX.local
TimeCreated : 30.01.2015 23:19:54
Message : TEST
Reihe2 und mehr
usw
Gewünschte TABELLE______________________

Ich würde diese nun gerne so haben:

ID, MachineName, TimeCreated, Message
213,T1.FIXXXX.local,30.01.2015 23:19:54, TEST, TEST Reihe2 und mehr
213,T1.FIXXXX.local,30.01.2015 23:19:54, TEST, TEST Reihe2 und mehr
__________________________________


Ich würde die Datei zeilenweise einlesen und dann umbauen...mir scheint dieses jedoch zu kompliziert.
Jemand eine Idee welches Verfahren einfacher ist?

DANKE!!
Mitglied: 114757
LÖSUNG 17.02.2015, aktualisiert 19.02.2015
Moin smogkiel,
Jemand eine Idee welches Verfahren einfacher ist?
klar, da du vermutlich mit Powershell arbeitest machst du das am besten über einen CSV-Export und Import. Das extrahieren in deinem vorhandenen Format geht zwar auch (über RegularExpressions) aber viel zu umstândlich wenn es sowieso auch einfacher geht:

Export der Daten in eine CSV-Datei
(nach Bedarf natürlich vorher filtern was in der CSV landen soll)
01.
Get-Eventlog | select ID,MachineName,TimeCreated,Message | export-csv c:\export.csv -Delimiter ';' -NoType -Encoding UTF8
Import der CSV-Daten in ein Objekt und Darstellung als Tabelle
01.
$csv = Import-csv c:\export.csv -Delimiter ';' 
02.
$csv | ft -Autosize
Und wenn das dann als reine Tabelle gespeichert werden soll:
01.
$csv | ft -Autosize -Wrap | set-content 'c:\tabelle.txt'
Du solltest dir mit Powershell immer im klaren sein das du meistens mit Objekten arbeitest. D.h. alles was du in Powershell in Tabellenform siehst sind zu 99,9 % Arrays aus Objekten mit Eigenschaften wobei die Eigenschaften als Spalten dargestellt werden.
Das ist ganz wichtig das du das verstehst, denn mit den CMDlets format-table und format-list zerstörst du diese Objekte, sie sind also im besten Fall immer nur dann zu benutzen wenn etwas als purer String in eine Ausgabe muss. Ansonsten sollte man die Objekte so lange wie möglich Objekte sein lassen, weil es sich damit viel besser arbeiten lässt.

Gruß jodel32
Bitte warten ..
Mitglied: SmogKiel
19.02.2015 um 10:26 Uhr
SUPER! DANKE für die ausführliche Beschreibung!!!
Auch die Zusatzinfos sind für mich 100% passend
Bitte warten ..
Ähnliche Inhalte
Windows Server
PowerShell Inhalt einer csv Datei löschen (3)

Frage von makaroni zum Thema Windows Server ...

VB for Applications
Bestimmte Daten aus eine CSV-Datei in eine Excel-Tabelle importieren (2)

Frage von MariaElena zum Thema VB for Applications ...

Datenbanken
MySQL - Feld aus anderer Tabelle hinzusummieren? (3)

Frage von 1410640014 zum Thema Datenbanken ...

Neue Wissensbeiträge
Rechtliche Fragen

Heiseshow, live ab 12 Uhr: Steht die Vorratsdatenspeicherung vor dem Aus?

Tipp von sabines zum Thema Rechtliche Fragen ...

Outlook & Mail

Outlook Probleme nach Juni Updates - KB3203467 ist Schuld

(1)

Information von Deepsys zum Thema Outlook & Mail ...

Microsoft Office

Windows 7, Office 2016 RTM und Updates ohne WSUS

Tipp von chgorges zum Thema Microsoft Office ...

E-Mail

Thunderbird 52 hat Druckprobleme

(3)

Tipp von magicteddy zum Thema E-Mail ...

Heiß diskutierte Inhalte
Server-Hardware
Einem Stromausfall entgegen wirken (28)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

Humor (lol)
Aktuell keine IT Probleme (22)

Frage von lordofremixes zum Thema Humor (lol) ...

Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...