Ich versuche, ein Powershell-Skript auszuführen, das alle Telefone bereinigt, die seit mindestens 110 Tagen nicht mit dem Exchange 2013-Server synchronisiert wurden.
Mein Code extrahiert die Daten und exportiert sie in CSV, aber wenn ich versuche, den Befehl Remove-MobileDevice einzuspeisen, um die Geräte zu löschen, schlägt das Skript fehl. Nichts, was ich im Internet gefunden habe, war bisher eine große Hilfe. Die meisten verwenden die veralteten ActiveSyncDevice-Cmdlets.
Hier ist mein Code, ich bin neu bei PowerShell und freue mich über jede Hilfe:
Get-MobileDevice -result unlimited | Get-MobileDeviceStatistics | where {$_.LastSuccessSync -le (Get-Date).AddDays(“-110”)} | select devicetype, deviceidentity, deviceos, deviceuseragent, identity | Export-csv C:\PhoneSync\Logs\Stale_Devices_110days_$((Get-Date).ToString('MM-dd-yyyy_hh-mm-ss')).csv | foreach (Remove-MobileDevice -Identity DeviceUserAgent -confirm:$false)
Antwort1
Kann ich eine bessere (automatische) Lösung anbieten, die in Exchange integriert ist? Seit Exchange 2013/2016 hat Microsoft den Wert EasMaxInactivityForDeviceCleanup zur Drosselungsrichtlinie hinzugefügt und beschriebenHierals:
Der Parameter EasMaxInactivityForDeviceCleanup gibt an, wie lange die Gerätepartnerschaften eines Benutzers aktiv bleiben. Standardmäßig gibt es keine Begrenzung für die Anzahl der Tage, die die Gerätepartnerschaften eines Benutzers aktiv bleiben. Verwenden Sie diesen Wert, wenn Sie die Anzahl inaktiver Gerätepartnerschaften in Ihrer Organisation minimieren möchten. Um diese Einstellung zu verwenden, geben Sie einen Wert in Tagen seit der letzten Synchronisierung des Benutzers an, damit die Gerätepartnerschaft entfernt wird.
Wenn ich Sie wäre, würde ich eine neue Drosselungsrichtlinie erstellen, wie erläutertHierund weisen Sie es Ihren Benutzern zu. Wenn dies erledigt ist und ein Benutzer ein neues Gerät hinzufügt, überprüft der Exchange-Server die konfigurierten Geräte und löscht das unbenutzte automatisch beim Hinzufügen vom neuen Gerät. Dann müssen Sie kein Skript ausführen, der Server kümmert sich größtenteils automatisch darum.
Antwort2
Sobald Sie Ihre Geräteliste, einschließlich der GUID, haben, können Sie dies ausführen, um alle Geräte in dieser CSV-Datei zu löschen.
Import-CSV (Ihr_Pfad_und_Dateiname.csv) | foreach{Remove-MobileDevice -Identity $_.Guid}