m4dddd
Goto Top

komplette Zeilen aus einer CSV-Datei löschen

Hallo ich habe folgendes Problem bei einer täglich erstellten CSV-Datei. Der Aufbau davon ist folgender:

"123456789ABC";"755123";"AA08-01234";"Name1"
"234567891ASD";"755124";"AA08-01235";"Name2"
"567891234WTR";"755125";"AA08-01236";"Name3"

Bei einigen Zeilen fehlen aber Datensätze (ist immer die AA08-Nummer). Das sieht ungefähr dann so aus:

"678912345MNH";"755126";;"Name4"

Wie kann ich über eine Batchdatei realisieren, dass diese Zeilen komplett gelöscht werden?

Content-ID: 84459

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

Ausgedruckt am: 26.11.2024 um 04:11 Uhr

bastla
bastla 01.04.2008 um 17:35:31 Uhr
Goto Top
Hallo m4dddd!

Wenn Du nur alle Zeilen, welche "AA08-" enthalten, weiter verwenden kannst, müsste folgendes genügen:
@echo off & setlocal
set "CSV=D:\Deine CSV-Datei.csv"  

set "T=%temp%\CSVTemp.tmp"  
findstr /c:"AA08-" "%CSV%">"%T%"  
move "%T%" "%CSV%">nul  

Anderenfalls könntest Du vielleicht auf das Vorkommen zweier aufeinanderfolgender ";" prüfen und diese Zeilen entfernen:
@echo off & setlocal
set "CSV=D:\Deine CSV-Datei.csv"  

set "T=%temp%\CSVTemp.tmp"  
findstr /v /c:";;" "%CSV%">"%T%"  
move "%T%" "%CSV%">nul  

Bitte zum Testen nur mit Kopien arbeiten ... face-wink

Grüße
bastla
m4dddd
m4dddd 01.04.2008 um 18:14:38 Uhr
Goto Top
Super! Vielen Dank für die schnelle Antwort! Genau das habe ich gesucht! face-smile