Encuentra elementos que están en array1 pero NO en array2

Extraje dos listas de computadoras de dos herramientas diferentes,Array1 yArray2.

Ahora necesito extraer los que están enArray1, pero no enArray2.

Logré obtener todos los que coinciden haciendo esto:

$matchingComp = @()

foreach ($SCCMcomputer in $SCCMcomputers) {
    foreach ($eWPTcomputer in $eWPTcomputers) {
        if ($SCCMcomputer.Computername -eq $eWPTComputer.Computername) {
            $obj = New-Object PSObject
            $obj | Add-Member -MemberType NoteProperty -Name "ComputerName" -Value $SCCMcomputer.Computername
            $matchingComp +=$obj
        }
    }
}

$matchingComp | Export-Csv $inEWPT -Delimiter "," -NoTypeInformation

Pero todavía necesito los que están en$SCCMcomputer pero NO en$eWPTcomputers...

He encontrado algunas soluciones en SO con otros idiomas (por ejemplo, Perl) pero no para PowerShell.

ACTUALIZAR

Todavía no obtengo el resultado correcto, en Excel con esta fórmula:

la salida se ve así:

significa que algunos están aquí, otros no. La salida en powershell es así

significa que 0 KB es vacío.

$SCCMcomputers | Export-Csv $sccmexport -Delimiter "," -NoTypeInformation
$eWPTcomputers | Export-Csv $ewptexport -Delimiter "," -NoTypeInformation
Compare-Object -ReferenceObject $SCCMcomputers -DifferenceObject $eWPTcomputers | ?{$_.sideIndicator -eq "=>"} |select inputobject | Export-Csv $inEWPT -NoTypeInformation
Compare-Object -ReferenceObject $SCCMcomputers -DifferenceObject $eWPTcomputers | ?{$_.sideIndicator -eq "=="} |select inputobject | Export-Csv $inBoth -NoTypeInformation
Compare-Object -ReferenceObject $SCCMcomputers -DifferenceObject $eWPTcomputers | ?{$_.sideIndicator -eq "<="} |select inputobject | Export-Csv $inSCCM -NoTypeInformation

Y ambos Nombre de columna (o como se llama) de SCCMcomptuers / eWPTcomputers es "Computername"

¿Alguna idea de lo que podría estar haciendo mal? Ambas matrices de computadora se generan a partir de SQL y en tablas hash (creo que se llama):@{Computername=......}@{Computername...., algo como esto.

Actualización 2

foreach ($t in $sccmComputers) {
    $Test1 += $t.computername
}

$Test2 = @()
foreach ($t in $ewptComputers) {
    $Test2 += $t.computername
}

Al eliminar el Encabezado de la tabla hash y simplemente tener matrices llenas de cadenas, funciona fantástico ... incluso-Property computername no funcionó ...: S

Respuestas a la pregunta(5)

Su respuesta a la pregunta