Compare (Vergleichen)
Aus Wiki-WebPerfect
Einfache Version mit zwei Dateien
$File1 = Get-Content -Path C:\temp\String1.txt $File2 = Get-Content -Path C:\temp\String2.txt Compare-Object -ReferenceObject $File1 -DifferenceObject $File2 | Sort-Object -Property InputObject
Erweiterte Version mit zwei temporären Dateien
# Workspace: Speicherort für temporäre Files $Workspace = "C:\temp" # String1/2 ersetzen! (Diese werden verglichen) $String1 = " Hallo1 HAllo3 Hallo2 " $String2 = " Hallo123 Hallo2 HAllo1 " # Temporäre Files New-Item -Path "$Workspace\File1.txt" -ItemType file -Force New-Item -Path "$Workspace\File2.txt" -ItemType file -Force # Hinzufügen der Strings in die Files Add-Content -Value $String1 -Path "$Workspace\File1.txt" Add-Content -Value $String2 -Path "$Workspace\File2.txt" # Vergleich der zwei Files (nur Unterschiede werden angezeigt) $MissingInFile1 = Compare-Object -ReferenceObject (Get-Content -Path "$Workspace\File1.txt") -DifferenceObject (Get-Content -Path "$Workspace\File2.txt") | Where {$_.SideIndicator -eq '=>'} | Sort-Object -Property InputObject $MissingInFile2 = Compare-Object -ReferenceObject (Get-Content -Path "$Workspace\File1.txt") -DifferenceObject (Get-Content -Path "$Workspace\File2.txt") | Where {$_.SideIndicator -eq '<='} | Sort-Object -Property InputObject # Alle fehlende Werte in dem Sring1/File1 $a = @{Label="InputObject"; Expression={$_.InputObject}}, ` @{Label="Test"; Expression={$MissingInString1}} $MissingInString1 = "Fehlt in dem String1/File1" $MissingInFile1 | Format-Table $a # Alle fehlende Werte in dem Sring2/File2 $a = @{Label="InputObject"; Expression={$_.InputObject}}, ` @{Label="Test"; Expression={$MissingInString2}} $MissingInString2 = "Fehlt in dem String2/File2" $MissingInFile2 | Format-Table $a # Remove der temporären Files Remove-Item -Path "$Workspace\File1.txt" Remove-Item -Path "$Workspace\File2.txt"