如果您不介意using linq/NET,這將列出目前在兩個列表中的用戶:
$file1 = import-csv -Path "C:\ps\output\adusers.csv"
$file2 = import-csv -Path "C:\ps\output\users.csv"
[linq.enumerable]::intersect([object[]]($file1.name), [object[]]($file2.name)) |
Export-Csv -NoTypeInformation -Path "C:\ps\result\result.csv"
Linq不具有相反/相反的方法相交,但可以使用泛型集合中的SymmetricExceptWith。下面
代碼列出誰是目前無論是在一個列表或另一方,但在無論是在一旦用戶:
$file1 = import-csv -Path "C:\ps\output\adusers.csv"
$file2 = import-csv -Path "C:\ps\output\users.csv"
$res = [Collections.Generic.HashSet[String]]([string[]]($file1.name))
$res.SymmetricExceptWith([string[]]($file2.name))
$res | Export-Csv -NoTypeInformation -Path "C:\ps\result\result.csv"
注:此代碼可能無法在早期的PowerShell版本。
看起來像我的出口是不正確的。感謝所有的答案將測試它。 – Provo