svenyo
Goto Top

Mit Powershell Spalte in CSV hinzufügen und mit Inhalt füllen

Hallo,

Ich habe folgendes Problem. In einer CSV-Datei sind 11 Spalten, wie folgt:

Artikelnummer;Bild1;Bild2;Bild3;[.......];Bild10
12345-0001;12345-0001-1.jpg;12345-0001-2.jpg;12345-0001-3.jpg;[.....];12345-0001-10.jpg
12345-0002;12345-0002-1.jpg;12345-0002-2.jpg;12345-0002-3.jpg;[.....];12345-0002-10.jpg

Nun soll in jedem Feld entweder -0001- oder -0002- durch einen Unterstrich _ ersetzt werden.
Folgender Code funktioniert schon super:

$sourceFile = 'C:\Ordner\Unterordner\pictures\*.csv'  
$destinationFile = 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv'  

(Get-Content $sourceFile) | ForEach-Object {
    $_.replace('-0002-', '_').replace('-0001-', '_')  
} | Set-Content $destinationFile

Und als Ergebnis erhalte ich wie gewollt:

Artikelnummer;Bild1;Bild2;Bild3;[.......];Bild10
12345-0001;12345_1.jpg;12345_2.jpg;12345_3.jpg;[.....];12345_10.jpg
12345-0002;12345_1.jpg;12345_2.jpg;12345_3.jpg;[.....];12345_10.jpg

Als Nächstes benötige ich aber noch eine zusätzliche Spalte Bild0, welche als Wert jeweils den Inhalt von Bild1 ABER ohne _1 enthält. Die fertige Datei sollte so aussehen:

Artikelnummer;Bild1;Bild2;Bild3;[.......];Bild10;Bild0
12345-0001;12345_1.jpg;12345_2.jpg;12345_3.jpg;[.....];12345_10.jpg;12345.jpg
12345-0002;12345_1.jpg;12345_2.jpg;12345_3.jpg;[.....];12345_10.jpg;12345.jpg

Ich habe es mit folgendem Code versucht, aber das klappt nicht:

$sourceFile = 'C:\Ordner\Unterordner\pictures\*.csv'  
$destinationFile = 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv'  

(Get-Content $sourceFile) | ForEach-Object {
    $_.replace('-0002-', '_').replace('-0001-', '_')  
} | Set-Content $destinationFile

$csv = Import-CSV 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -delimiter ';'  
$csv | add-member -MemberType NoteProperty -Name 'Bild' -Value $_.Bild1.replace('_1.jpg','.jpg') -Force  
$csv | Export-CSV 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -NoType -delimiter ';' -Encoding Default  

Kann mir jemand helfen?
Gruß,
svenyo

Content-Key: 569550

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

Printed on: May 12, 2024 at 12:05 o'clock

Mitglied: 143728
143728 May 05, 2020 at 19:59:41 (UTC)
Goto Top
Member: SeaStorm
SeaStorm May 05, 2020 at 20:05:11 (UTC)
Goto Top
Hi


$csv = $csv | Select-Object -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
Member: svenyo
svenyo May 05, 2020 at 20:22:55 (UTC)
Goto Top
Habe den Code wie folgt ausprobiert:

$sourceFile = 'C:\Ordner\Unterordner\pictures\*.csv'  
$destinationFile = 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv'  

(Get-Content $sourceFile) | ForEach-Object {
    $_.replace('-0002-', '_').replace('-0001-', '_')  
} | Set-Content $destinationFile

$csv = Import-CSV 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -delimiter ';'  
$csv = $csv | Select-Object -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
$csv | Export-CSV 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -NoType -delimiter ';' -Encoding Default  

Leider erhalte ich folgende Fehlermeldung:

Import-Csv : Das Argument kann nicht verarbeitet werden, da der Wert des Arguments "name" ungültig ist. Ändern Sie den Wert des Arguments "name", und führen Sie  
 den Vorgang erneut aus.
Bei Zeile:1 Zeichen:18
+ $csv = Import-CSV <<<<  'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -delimiter ';'  
    + CategoryInfo          : InvalidArgument: (:) [Import-Csv], PSArgumentException
    + FullyQualifiedErrorId : Argument,Microsoft.PowerShell.Commands.ImportCsvCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...";;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException  
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand
 
Select-Object : Die Eigenschaft kann nicht verarbeitet werden, da die Bild0-Eigenschaft bereits vorhanden ist.
Bei Zeile:2 Zeichen:28
+ $csv = $csv | Select-Object <<<<  -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
    + CategoryInfo          : InvalidOperation: (@{Artikelnummer...;;;;;;; Bild0=}:PSObject) [Select-Object], PSArgumentException
    + FullyQualifiedErrorId : AlreadyExistingUserSpecifiedPropertyNoExpand,Microsoft.PowerShell.Commands.SelectObjectCommand

Was ist denn falsch?
Member: erikro
erikro May 06, 2020 at 06:35:28 (UTC)
Goto Top
Moin,

Zitat von @svenyo:
> $sourceFile = 'C:\Ordner\Unterordner\pictures\*.csv'  
> $destinationFile = 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv'  
> 
> (Get-Content $sourceFile) | ForEach-Object {
>     $_.replace('-0002-', '_').replace('-0001-', '_')  
> } | Set-Content $destinationFile
> 
> $csv = Import-CSV 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -delimiter ';'  
> $csv = $csv | Select-Object -Property *, @{label = 'Bild0'; expression = {$_.Bild1.replace('_1.jpg','.jpg')}}  
> $csv | Export-CSV 'C:\Ordner\Unterordner\pictures\Bilder1neu.csv' -NoType -delimiter ';' -Encoding Default  
> 

Leider erhalte ich folgende Fehlermeldung:

> Import-Csv : Das Argument kann nicht verarbeitet werden, da der Wert des Arguments "name" ungültig ist. Ändern Sie den Wert des Arguments "name", und führen Sie  
>  den Vorgang erneut aus.
> Bei Zeile:1 Zeichen:18

Wenn ich das richtig verstehe, dann versuchst Du Deine Zieldatei zu importieren, die vermutlich vor Ausführung des Skripts noch nicht vorhanden ist. Damit wäre dann die Pfadangabe ungültig und wird angemeckert. Nur so nebenbei: Wieso schreibst Du die beiden Angaben in eine Variable und benutzt sie dann weiter unten nicht, sondern schreibst immer den gesamten Pfad rein?

Liebe Grüße

Erik