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

Wie kann ich via Batch eine Datumsspalte in eine CSV Datei einfügen?

Mitglied: BBUser

BBUser (Level 1) - Jetzt verbinden

01.04.2010, aktualisiert 12:25 Uhr, 4096 Aufrufe, 7 Kommentare

Auf diversen Servern fallen täglich Logfiles an, welche in Excel in einer Pivot ausgewertet werden sollen.

Hallo Forum,

die o.g. Logfiles werden mittels eines Herstellereigenen Tools ausgewertet. Es wird eine CSV generiert. In diese CSV Datei möchte ich nun vorzugweise mittels einer BATCH Datei eine Datumsspalte einfügen. Wie macht man dies bzw ist. das überhaupt möglich?

Später werden dann die CSV Dateien zusammen kopiert (was auch schon klappt) und via Pivot ausgwertet.

Für Tipps wäre ich dankbar.

Gruss
Mitglied: bastla
01.04.2010 um 12:46 Uhr
Hallo BBUser!

Etwa so:
01.
@echo off & setlocal 
02.
set "Log=D:\Dein Log.csv" 
03.
 
04.
set "LTemp=%temp%\LogTemp.txt" 
05.
move "%Log%" "%LTemp%" 
06.
for /f "delims=" %%i in (%LTemp%) do >>"%Log%" echo %date%;%%i
Grüße
bastla
Bitte warten ..
Mitglied: BBUser
01.04.2010 um 13:17 Uhr
Hallo bastla,

Danke für deine Hilfe.

Der Code funktioniert soweit schon recht gut, folgende Fehler treten noch auf.

1. ) Die Datumsspalte hat noch keine Überschrift wie z.b. date
2. ) Der zweiten Spalte in der CSV werden Sonderzeichen hinzugefügt, was den Import in Excel schwierig macht. Aus Server wird Server

Bekommen wir das gelöst?

Grüße
Bitte warten ..
Mitglied: bastla
01.04.2010 um 13:33 Uhr
Hallo BBUser!

Ungetestet:
01.
@echo off & setlocal 
02.
set "Log=D:\Dein Log.csv" 
03.
 
04.
set "LTemp=%temp%\LogTemp.txt" 
05.
type "%Log%">"%LTemp%" 
06.
del "%Log%" 
07.
set "HeaderDone=" 
08.
for /f "delims=" %%i in (%LTemp%) do ( 
09.
    if defined HeaderDone ( 
10.
        echo %date%;%%i 
11.
    ) else ( 
12.
        echo Datum;%%i 
13.
        set "HeaderDone=True" 
14.
    )  
15.
)>>"%Log%"
[Edit] Ausgabe nach "%Log%" in die richtige Zeile gesetzt [/Edit]

Grüße
bastla
Bitte warten ..
Mitglied: BBUser
01.04.2010 um 13:54 Uhr
Hallo Bastla,

die Datumsspalte gibt es nun in der ersten Zeile.
Leider bleibt der restliche Inhalt verschwunden. Habe schon versucht dies zu lösen, aber ich finde den Fehler nicht - die for Schleife erscheint mir logisch.

/edit Fehler gefunden. Das schreiben in die Logdatei fehlte.
01.
set "Log=C:.....csv" 
02.
 
03.
set "LTemp=C:.....txt" 
04.
 
05.
type "%Log%">"%LTemp%" 
06.
del "%Log%" 
07.
set "HeaderDone=" 
08.
for /f "delims=" %%i in (%LTemp%) do ( 
09.
    if defined HeaderDone ( 
10.
        echo %date%,%%i >>"%Log%"     
11.
 ) else ( 
12.
        echo Datum,%%i 
13.
        set "HeaderDone=True" 
14.
    ) >>"%Log%"  
15.
)
Bekommt man das Sonderzeichen in der zweiten Spalte der ersten Zeile noch weg? Schaut in Excel so aus: Server


Grüße
Bitte warten ..
Mitglied: bastla
01.04.2010 um 14:12 Uhr
Hallo BBUser!

In meinem Ansatz oben war die Ausgabe in die Log-Datei eine Zeile zu hoch platziert (ist jetzt korrigiert).
Bekommt man das Sonderzeichen in der zweiten Spalte der ersten Zeile noch weg?
Wenn "man" wüsste, wo es herkommt (aus dem Batch nämlich eigentlich nicht), hätte "man" ev eine Chance ...

Grüße
bastla

P.S: In "Code"-Formatierung kannst Du zwar nicht fett schreiben, aber ansonsten ist sie für Batches besser geeignet.
Bitte warten ..
Mitglied: BBUser
01.04.2010 um 15:06 Uhr
Hallo Bastla,

danke. Hab das mal gemacht, mit dem Code. Schaut einfach besser aus ;)

Meine Batch schaut derzeit so aus.

01.
 
02.
for /f "tokens=1-5 delims=/.-:;, " %%a in ("%date%,%time%") do set folderdate=%%c%%b%%a 
03.
 
04.
set logsource="E:\...\%folderdate%" 
05.
set targetdir="C:\...\exports" 
06.
set exe="C:\...\...stats.exe" 
07.
 
08.
%exe% -p e -u all -l %logsource% -output all -ol %targetdir% 
09.
 
10.
 
11.
ren "C:\...\HistoricalStats*.csv" "dailyuserstats_%folderdate%.csv" 
12.
 
13.
 
14.
set "Log=C:\...\dailyuserstats_%folderdate%.csv" 
15.
 
16.
set "LTemp=C:\...\exports\LogTemp.txt" 
17.
 
18.
type "%Log%">"%LTemp%" 
19.
del "%Log%" 
20.
set "HeaderDone=" 
21.
for /f "delims=" %%i in (%LTemp%) do ( 
22.
    if defined HeaderDone ( 
23.
        echo %folderdate%,%%i >>"%Log%"  
24.
    ) else ( 
25.
        echo Datum,%%i 
26.
        set "HeaderDone=True" 
27.
    ) >>"%Log%"  
28.
29.
 
30.
move %Log% "C:\...\exports\dailystats\" 
31.
 
32.
del %LTemp% 
33.
 
Noch nicht sonderlich hübsch.. aber funktioniert erstmal.
Könnte hier irgendwo der Fehler mit dem Sonderzeichen liegen?


Bin dann noch auf ein weiteres Problem gestoßen.

Die erstellten CSV Dateien kopiere ich dann z.b. täglich in eine andere CSV. Dort schaut es soweit ganz gut aus, leider werden die ersten Zeilen der CSV Dateien mitgenommen, d.h. alle ~30 Zeilen taucht dann wieder Datum, Server,.... auf. Kann man sowas auf einfache Weise verhindern?

Der "Zusammen-Kopier-Job" schaut so aus (Stammt hier aus dem Forum):

01.
set "folder=C:\...\dailystats" 
02.
set "report=C:\...\dailystats\Current_user_report.csv" 
03.
set "line=C:\...\line1.txt" 
04.
 
05.
copy "%line%" "%report%" >nul 
06.
copy "%folder%\*.csv" "%report%.tmp" >nul 
07.
findstr /v /b /c:"Text" "%report%.tmp">>"%report%" 
08.
del "%report%.tmp" 
09.
 
Grüße
Bitte warten ..
Mitglied: bastla
01.04.2010 um 16:18 Uhr
Hallo BBUser!

Hinsichtlich der Sonderzeichen habe ich keine Idee (Unicode als Ursache habe ich schon mit dem - ansonsten unnötigen - "type" eliminiert) ...
Was das "Zusammenkopieren" anlangt, setzt der Batch voraus, dass die Überschriftenzeile als "line1.txt" gespeichert ist - dann sollte aber eigentlich auch
01.
set "folder=C:\...\dailystats"  
02.
set "report=C:\...\dailystats\Current_user_report.csv"  
03.
set "line=C:\...\line1.txt"  
04.
 
05.
type "%line%" "%report%" 
06.
type "%folder%\*.csv"|findstr /v /b /c:"%line%">>"%report%"
genügen ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Per Batch eine Spalte in eine CSV Datei einfügen

gelöst Frage von mayli01Batch & Shell13 Kommentare

Hallo Forum :) Folgende Ausgangssituation. Ich habe eine CSV Artikelliste mit insgesamt 9 Spalten, einer Kopfzeile und etwa 50 ...

Batch & Shell

Dateien aus CSV mit Batch suchen

gelöst Frage von joes1609Batch & Shell5 Kommentare

Hallo zusammen, ich stehe gerade auf dem Schlauch. Ich habe eine CSV-Datei, in der stehen zusammengesetzt, jeweils ein kompletter ...

Batch & Shell

Per Batch Datei am Anfang einer .csv einer zeile mit bestimmten Inhalt einfügen und wieder speichern

Frage von FuxxLiBatch & Shell1 Kommentar

Hallo, ich habe folgende Herausforderung. Die Warenwirtschaft des Kunden exportiert nur Dateien mit einer Kopfzeile. Ein Dienstleister benötigt aber ...

Microsoft Office

Excell - CSV Dateien aus Ordner in eine Workmap einfügen VBA

Frage von 134094Microsoft Office5 Kommentare

Hallo Forum, ich habe folgendes Problem: Ich habe eine Menge CSV-Dateien die ich in einer Excelltabelle darstellen will. Für ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 10 StundenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 10 StundenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 1 TagDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 1 TagSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
Exchange Server
Exchange Postfach Einbindung Betriebs-rat -Arzt, Bewerbung .
gelöst Frage von YellowcakeExchange Server22 Kommentare

Hey ich habe da mal eine Denksport Aufgabe bekommen Genutzt wird ein Exchange Server 2010. hier gibt es den ...

Datenschutz
Telematikinfrastruktur Erfahrungsaustausch
Frage von MOS6581Datenschutz12 Kommentare

Moin, unter meinen Kunden befinden sich auch einige Ärzte, welche sich künftig mit der Telematikinfrastruktur-Geschichte der Gematik herumärgern dürfen. ...

Windows Server
Delgegierte OU via RDP verwalten - Objektverwaltung zuweisen
gelöst Frage von TOAOICEWindows Server12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte in meiner Domäne (Server2016), einer Gruppe (OUAdmin) Berechtigungen auf die OU Test ...

Windows Server
Downgrade von Windows Server 2016 auf 2012 - Wie vorgehen?
Frage von EstefaniaWindows Server12 Kommentare

Guten Ich habe eine Frage an Erfahrene unter euch. Durch einen InPlace Upgrade wurde Windows Server 2012 auf die ...