我想将两个CSV文件读入一个数组。我仅从文件1的第一列开始,而从文件2仅的最后一列。尽管我想消除所有重复的条目和每个不带字符“(”的数组元素。两个文件都包含德语变音符号,如“äöüß”。
到目前为止,这是我的脚本:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Bypass -Force
#Define variables
$Arrayusername_ads_unique = New-Object System.Collections.ArrayList
$Arrayusername_ads_unique_new = New-Object System.Collections.ArrayList
$Arrayusername_ads_value = New-Object System.Collections.ArrayList
$Arrayusername_Personalamt_unique = New-Object System.Collections.ArrayList
$Arrayusername_Personalamt_unique_value = New-Object System.Collections.ArrayList
$Arrayusername_Personalamt_unique_new = New-Object System.Collections.ArrayList
$Arrayusername_ads_unique_new = New-Object System.Collections.ArrayList
#Convert CSV-File User-ads to UTF8 and import into array
$Arrayusername_ads_unique = Get-Content -Path "C:\Temp\Userabgleich\Benutzer_ADS-utf8.csv"
$Arrayusername_ads_unique | Out-File C:\Temp\Userabgleich\Array_ads_temp.csv -Append -Encoding utf8
$Arrayusername_ads_unique_new = Import-Csv -Delimiter:';' -Header "Name","Amt" -Path "C:\Temp\Userabgleich\Array_ads_temp.csv" |
Where-Object {$_.Name -like "*(*"} |
Sort-Object -Unique -Property Name, Amt
foreach ($value in $Arrayusername_ads_unique) {
$value_new = $value.Replace(" ", "%")
$value_new | Out-File C:\Temp\Userabgleich\Array_ads_value.txt -Append -Encoding utf8
}
我首先将CSV转换为UTF-8,以使ä,ö和ü正确转换。