branpo
Goto Top

CSV per Batch umformatieren

Guten Abend,

ich muss diverse csv Dateien die alle gleich aufgebaut sind umformatieren.
Da es händisch eine wahnsinnige Arbeit wäre, würde ich dies gerne per Batch Datei erledigen.

Die CSV ist folgendermaßen aufgebaut:

in der ersten Zeile steht Text der automatisch entfernt werden soll.

dafür habe ich die erste Bat:
@echo off
for /f "delims=" %%i in ('dir /a-d /b /on "*.csv"') do (  
    more /e +1 "%%i">"%%i.tmp"   
    del "%%i" && ren "%%i.tmp" "%%i"  
)
exit /b

danach soll die letzte Zeile entfernt werden
dafür die zweite Bat:
@echo off
setlocal enabledelayedexpansion

for %%a in (*.csv) do (
find /v "Dow" < %%a >> %%~Na_.csv  
)

anschließend kommen Zeilen die folgendermaßen aussehen:

07/13/18,332.25,332.5,330.25,330.25,-6.25,272,0
davon möchte ich den Wert nach dem ersten, zweiten, dritten und fünften Komma und das dazugehörige Komma löschen.

dafür die dritte Bat:
@Echo off
For %%F in (*.csv) do ( 
    (for /f "delims=" %%A in (%%F) do Call :Split %%A  
    ) > "%~dp0%%~nF_fixed.csv"  
)
goto :Eof
:Split
Echo(%1,%5,%7,%8

Anschließend soll ganz hinten noch ein Komma und die ersten beiden Buchstaben des Dateinamens der CSV eingefügt werden dahinter die Zahlen die an der vierten und fünften Stelle des Dateinamens stehen und zu guter letzt der Buchstabe als Großbuchstabe (falls das möglich ist)der als drittes (als Kleinbuchstabe) im Dateiname steht.
Angenommen der Dateiname lautet abc01jhggtgnj.csv soll also nachher dastehen 07/13/18,330.25,272,0,ab01C

Dafür habe ich leider trotz Google keine sinnvolle Methode gefunden.
Kann mir da jemand von Euch helfen?
Logischerweiße müssen es nicht 4 Bats sein ich schaff es nur nicht alle zusammenzufügen zu einer die funktioniert.

Vielen Dank im voraus.

Content-ID: 502092

Url: https://administrator.de/contentid/502092

Ausgedruckt am: 23.11.2024 um 16:11 Uhr

Lochkartenstanzer
Lösung Lochkartenstanzer 07.10.2019 aktualisiert um 06:10:28 Uhr
Goto Top
Moin,

Ich würde einfach Powershell nehmen, um Spalten zu löschen.

Ansonsten würde ich es damit versuchen

lks
Branpo
Branpo 07.10.2019 um 09:32:30 Uhr
Goto Top
Danke LKS,

ich habe für die ersten Probleme Lösungen gefunden nur daran den Dateinamen etwas zu vertauschen und hinten anzufügen verzweifel ich.
Es wäre super wenn Du mir dabei helfen könntest.

Lg