我有两个 .CSV 文件,其中包含有关我工作的员工的信息。第一个文件 (ActiveEmploye.csv) 有大约 70 个不同的字段和 2500 个条目。另一个 (EmployeEmail.csv) 有四个字段(FirstName、LastName、Email、FullName)和 700 个条目。这两个文件都有共同的 FullName 字段,这是我唯一可以用来比较每个文件的东西。我需要做的是将电子邮件地址(来自 EmployeEmail.csv)添加到 ActiveEmploye.csv 中的相应员工。并且,对于那些没有电子邮件地址的人,该字段可以留空。
我尝试使用几天前在互联网上找到的 Join-Object 函数,但第一个 csv 文件包含函数无法处理的太多字段。
非常感谢任何建议!
最佳答案
给这只猫剥皮的方法可能有几种。我会试试这个:
Import-Csv EmployeeEmail.csv | ForEach-Object -Begin {
$Employees = @{}
} -Process {
$Employees.Add($_.FullName,$_.email)
}
Import-Csv ActiveEmployees.csv | ForEach-Object {
$_ | Add-Member -MemberType NoteProperty -Name email -Value $Employees."$($_.FullName)" -PassThru
} | Export-Csv -NoTypeInformation Joined.csv
关于powershell - 如何使用 PowerShell 合并两个 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14564920/