chopper86
Goto Top

Spalte einer CSV Datei mit Powershell kopieren

Hallo,

ich benötige wieder einmal eure Hilfe!

Ich muss derzeit mit ziemlich vielen CSV Dateien arbeiten und möchte mir selber das leben mit PowerShell etwas leichter machen.
Ich kann leider niergends eine Lösung finden wie ich am einfachsten beim Importieren einer CSV eine Spallte kopiere.

Die CSV in Powershell zu importieren ist kein Problem auch die Header zu sortieren und neue Namen zu vergeben. Ich benötige aber eine den Inhalt einer Spalte 2 mal in einer CSV mit 2 verschiedenen Header.

Ich hoffe Ihr könnt mir helfen!

Content-Key: 569020

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

Printed on: May 6, 2024 at 04:05 o'clock

Mitglied: 143728
Solution 143728 May 01, 2020 updated at 15:52:57 (UTC)
Goto Top
Nichts leichter als das
$csv = Import-CSV 'd:\path\file.csv' -delimiter ";" | select *,@{n='NeuerSpaltenname';e={$_.NameDerOriginalSpalte}}  
$csv

https://www.pdq.com/blog/powershell-tips-for-system-administrators-calcu ...
Member: Chopper86
Chopper86 May 01, 2020 at 15:54:46 (UTC)
Goto Top
Besten Dank, hat funktioniert

$Data = Import-Csv -Path "C:\XYZ\XYZ_CSV\meine.csv" -Delimiter ';' |   
        select -Property @{label="ordernumber";expression={$($_."artnr")}},  
                         @{label="purchasePrice";expression={$($_."pre1")}},  
                         @{label="price";expression={$($_."uvp")}},  
                         @{label="ean";expression={$($_."gtin13")}},  
                         @{label="name";expression={$($_."artname")}},  
                         @{label="discription";expression={$($_."ktext")}},  
                         @{label="discriptionLong";expression={$($_."ltext")}},  
                         @{label="supplierName";expression={$($_."herst")}},  
                         @{label="neuerArtikel";expression={$($_."neuh")}},  
                         @{label="verfügbar";expression={$($_."verfügbarkeit")}} |    
        select *,@{n='mainnumber';e={$_.ordernumber}} | # Kopiert eine ganze Spalte       
        ConvertTo-Csv -NoTypeInformation -Delimiter ';'