syscloud2019
Goto Top

Batch: CSV - Zeilen mit bestimmten Wert in Spalte vervielfachen

Guten Abend liebes Forum,

bisher nur stiller Mitleser, heute schreibe ich auch etwas, denn ich habe Frage.

Ich habe eine CSV Datei und möchte gerne mit einer Batch Zeilen mit bestimmten Wert in Spalte vervielfachen.

Ausgangsdatei:

12454;TEST1;1;
12424;TEST1;2;
12444;TEST1;1;
12454;TEST1;1;
12474;TEST1;1;
12494;TEST1;3;

Wenn in der 3 Spalte bspw. eine 2 hinterlegt ist, soll die Zeile direkt in der nächsten Zeile als Kopie stehen, bei einer 3 müsste es 2x kopiert werden:

12454;TEST1;1;
12424;TEST1;2;
12424;TEST1;2;
12444;TEST1;1;
12454;TEST1;1;
12474;TEST1;1;
12494;TEST1;3;
12494;TEST1;3;
12494;TEST1;3;

Wäre soetwas mit Batch möglich?

Schönen Abend, Bernd.

Content-Key: 482568

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

Printed on: April 26, 2024 at 15:04 o'clock

Mitglied: 140447
Solution 140447 Aug 08, 2019 updated at 09:17:14 (UTC)
Goto Top
Immer noch am Batchen?
@echo off
set "quelle=D:\quelle.csv"  
set "ziel=D:\ziel.csv"  
>"%ziel%" (for /f "usebackq tokens=1-3 delims=;" %%a in ("%quelle%") DO for /L %%f in (1 1 %%c) do echo %%a;%%b;%%c)  
Member: syscloud2019
syscloud2019 Aug 08, 2019, updated at Aug 09, 2019 at 07:01:32 (UTC)
Goto Top
EDIT: HAT SICH ERLEDIGT -> Lösung gefunden.

Guten Tag routerboard,

danke für Deine schnelle Rückmeldung. Ich wollte eine Anpassung vornehmen und bei mir klappt es irgendwie nicht mehr:

>"%ziel%" (for /f "usebackq tokens=1-20 delims=;" %%a in ("%quelle%") DO for /L %%f in (1 1 %%t) do echo %%a;%%b;%%c;%%d;%%e;%%f;%%g;%%h;%%i;%%j;%%k;%%l;%%m;%%n;%%o;%%p;%%q;%%r;%%s;%%t)  

Bernd