freshman2017
Goto Top

Batch: Werte aus URL ziehen

Hallo liebe Gemeinde!

Wie wäre es mit Batch möglich, eine CSV Datei so umzubauen, dass ich nachfolgendes Ergebnis bekommen kann:
(2. Wert in Output kommt aus 2 Spalte aus Input und 3. Wert in Output kommt aus jeweiliger URL Spalte 3. in Input können mehrere URL komma getrennt sein)


Input:

DHL;123;ABC123456;https://www.dhl.de/de/privatkunden/pakete-empfangen/verfolgen.html?piececode=123,https://www.dhl.de/de/privatkunden/pakete-empfangen/verfolgen.html?piececode=1234,https://www.dhl.de/de/privatkunden/pakete-empfangen/verfolgen.html?piececode=12345;
DHL;345;ABC1234567;https://www.dhl.de/de/privatkunden/pakete-empfangen/verfolgen.html?piececode=345;

Output:

DHL;123;ABC123456;
DHL;1234;ABC123456;
DHL;12345;ABC123456;
DHL;345;ABC1234567;
Mit den besten Grüßen,

freshman2017

Content-Key: 72846133376

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

Printed on: April 27, 2024 at 20:04 o'clock

Mitglied: 7907292512
Solution 7907292512 Aug 23, 2023 updated at 12:18:17 (UTC)
Goto Top
Powershell
$csv = Import-CSV .\datei.csv -Delimiter ";" -Header (1..4)  
$out = foreach($line in $csv){
    foreach($url in $line.'4'.split(',')){  
        "$($line.'1');$($url.split("=")[-1]);$($line.'3')"  
    }
}
$out | set-content .\neu.csv
Batch
@echo off
>".\out.csv" (for /f "usebackq tokens=1-4 delims=;" %%a in (".\datei.csv") do for /f "tokens=2 delims==" %%e in ("%%d") do echo %%a;%%e;%%c)