Benutzer:Plozessor/scripts/denkmalatlas-vergleich

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Dieses Skript vergleicht die letzten zwei Exporte von denkmalatlas-import. Es sollte unter Powershell 7 ausgeführt werden. Die Ausgabedateien compare-old.txt und compare-new.txt können anschließend mit einem Tool wie DiffChecker verglichen werden. Man kann das Skript auch noch weiter ausbauen und feldweise Vergleiche durchführen.

# Dieses Skript vergleicht die Denkmaldetails in den letzten zwei Exporten des Skripts "denkmalatlas-import"

# die letzten zwei Dateien importieren
$jfiles = Get-ChildItem . DenkmalDetails_2*.xml | Sort-Object name
$new = Import-Clixml $jfiles[-1] | Sort-Object koid -Unique
$old = Import-Clixml $jfiles[-2] | Sort-Object koid -Unique

# Unterschiede ermitteln
$diff = Compare-Object $old $new -Property aktennummer, name, beschreibung, funktion, latitude, longitude

# Von Unterschieden betroffene Aktennummern ermitteln und in zwei Dateien (compare-old.txt und compare-new.txt) ausgeben
# Die Dateien können dann z. B. mit https://www.diffchecker.com/ verglichen werden
$diffnr = $diff.aktennummer | Sort-Object -Unique
$old | Where-Object { $_.aktennummer -in $diffnr } | Sort-Object aktennummer, name, funktion | Out-File compare-old.txt
$new | Where-Object { $_.aktennummer -in $diffnr } | Sort-Object aktennummer, name, funktion | Out-File compare-new.txt