r3m4
Commodore
- Registriert
- Sep. 2012
- Beiträge
- 4.567
Hallo zusammen,
heute mal was geschäftliches
Ich bin leider kein Programmierer, möchte aber ein kleines Script schreiben.
Hintergrund für Interessierte:
Durch den Datenschutz sind wir gezwungen Dateien die für jedermann zugänglich sind von Zeit zu Zeit zu überprüfen bevor was böses passiert. Wir haben hier Tauschlaufwerke eingerichtet in denen Nutzer Daten untereinander easy austauschen können.
Hier bleiben Dateien oft lange liegen. Es soll jetzt für jeden User aus der AD geschaut werden wie lange die Daten da liegen und danach eine Mail geschickt werden, mit Warnung oder Hinweis dass etwas gelöscht wurde.
Script funktioniert, Nutzer werden ausgelesen und Mail geschickt. Daten zuverlässig gelöscht.
ABER:
Hat ein Benutzer Daten zur Löschung (älter als $loeschen Tage) aber nicht zur Warnung (älter als $warnung Tage aber jünger als $loeschen Tage) in seinem Laufwerk, dann springt er mir in die falsche Schleife.
Lange Rede kurzer Sinn. Hier der Code und die Operatorenverknüpfung um die es sich dreht:
Ich bekomme folgenden Fehler bei der Ausführung:
Haut mal raus was es damit auf sich hat
heute mal was geschäftliches
Ich bin leider kein Programmierer, möchte aber ein kleines Script schreiben.
Hintergrund für Interessierte:
Durch den Datenschutz sind wir gezwungen Dateien die für jedermann zugänglich sind von Zeit zu Zeit zu überprüfen bevor was böses passiert. Wir haben hier Tauschlaufwerke eingerichtet in denen Nutzer Daten untereinander easy austauschen können.
Hier bleiben Dateien oft lange liegen. Es soll jetzt für jeden User aus der AD geschaut werden wie lange die Daten da liegen und danach eine Mail geschickt werden, mit Warnung oder Hinweis dass etwas gelöscht wurde.
Script funktioniert, Nutzer werden ausgelesen und Mail geschickt. Daten zuverlässig gelöscht.
ABER:
Hat ein Benutzer Daten zur Löschung (älter als $loeschen Tage) aber nicht zur Warnung (älter als $warnung Tage aber jünger als $loeschen Tage) in seinem Laufwerk, dann springt er mir in die falsche Schleife.
Lange Rede kurzer Sinn. Hier der Code und die Operatorenverknüpfung um die es sich dreht:
Code:
If (((Get-ChildItem \\$server\abfall\$user -Recurse | Where-Object {(($heute - $_.LastWriteTime).Days -gt $warnung) -and (($heute - $_.LasWriteTime).Days -lt $loeschen)}) -ne $null) -and (Get-ChildItem \\$server\abfall\$user -Recurse | Where-Object {($heute - $_.LastWriteTime).Days -gt $loeschen}) -ne $null) # herausfinden ob Dateien zur Warnung da sind und welche gelöscht werden.
Ich bekomme folgenden Fehler bei der Ausführung:
Code:
PS C:\Users\administrator\Documents> .\abfallpruefungwerk4_test.ps1Für "op_Subtraction" und die folgende Argumenteanzahl kann keine Überladung gefunden werden: "2".
In C:\Users\administrator\Documents\abfallpruefungwerk4_test.ps1:68 Zeichen:75
+ If (((Get-ChildItem \\$server\abfall\$user -Recurse | Where-Object {(($heu ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodException
+ FullyQualifiedErrorId : MethodCountCouldNotFindBest
Haut mal raus was es damit auf sich hat
Zuletzt bearbeitet:
(Domänenname gelöscht)