yasha91

Powershell CSV Spalte einfügen, mit Wert aus anderer Spalte

Hallo Zusammen,

folgendes Problem:

Ich habe eine CSV Datei, die ich um eine Spalte erweitern möchte. Der Inhalt der Spalte soll um einen festen Wert "(URL) + die Artikelnummer + (.jpg)" aus der jeweiligen Zeile gefüllt werden.

$csv = Import-CSV 'import.csv' -delimiter ';' -Encoding UTF8  
$csv | add-member -MemberType NoteProperty -Name 'Artikelbild' -Value '.../artikelbilder/ARTIKELNUMMER.jpg' -Force  
$csv | Export-CSV 'import1.csv' -NoType -delimiter ';' -Encoding UTF8  

Soweit habe ich es, aber anstatt der "ARTIKELNUMMER" müsste dort, die jeweilige Artikelnummer aus der Zeile stehen. Die Spalte mit den Artikelnummern heißt ID.

Da ich wirklich kein Experte in Powershell bin, hoffe ich das Ihr mir weiterhelfen könnt.

Vielen Dank im Voraus.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 882043969

Url: https://administrator.de/forum/powershell-csv-spalte-einfuegen-mit-wert-aus-anderer-spalte-882043969.html

Ausgedruckt am: 05.06.2025 um 06:06 Uhr

colinardo
Lösung colinardo 02.07.2021 aktualisiert um 11:40:52 Uhr
Goto Top
Servus.
als Einzeiler abgekürzt:
(Import-CSV 'import.csv' -delimiter ';' -Encoding UTF8) | select *,@{n='Artikelbild';e={".../artikelbilder/$($_.ID).jpg"}} | Export-CSV 'import1.csv' -NoType -delimiter ';' -Encoding UTF8
Oder wenn du bei deiner ausführlichen Variante bleiben willst geht das natürlich auch
$csv = Import-CSV 'import.csv' -delimiter ';' -Encoding UTF8  
$csv | add-member -MemberType NoteProperty -Name 'Artikelbild' -Value '' -Force  
$csv | %{
    $_.Artikelbild = ".../artikelbilder/$($_.ID).jpg"  
}
$csv | Export-CSV 'import1.csv' -NoType -delimiter ';' -Encoding UTF8  

Falls dich das im ersten Code verwendete Konstrukt @{n='Artikelbild';e={".../artikelbilder/$($_.ID).jpg"}} interessiert das nennt sich Calculated Property und wird hier näher erläutert:
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell. ...

Grüße Uwe
yasha91
yasha91 02.07.2021 um 11:41:09 Uhr
Goto Top
Super vielen Dank Uwe! Problem gelöst