kakashi1997
Goto Top

Alle Ordner mit der neusten Datei die älter als 2014 ist löschen

Hallo Allerseits.

Ich stehe vor einen Problem, dass ich nicht lösen kann.
Ich habe ein Netzlaufwerk ( \\tel-o1-nascl003\abt$ ) mit mehreren Ordner. Ich muss alle Ordner löschen, die keine neuere Datei als 01.10.2014 hat.
Ist dies Ihrgendwie machbar und zusätzlich die auf den Ordner berechtigten Gruppen löschen?

Gruss

kakashi1997

Content-ID: 293197

Url: https://administrator.de/contentid/293197

Ausgedruckt am: 22.11.2024 um 04:11 Uhr

Kuemmel
Kuemmel 15.01.2016 um 09:16:43 Uhr
Goto Top
Hi,
wie wäre es mit einem simplen Script? Tante Google müsst da helfen können.

Gruß
Kümmel
kakashi1997
kakashi1997 15.01.2016 um 09:23:45 Uhr
Goto Top
Hallo Kümmel

Ich versuche es jetzt seit 2 Monaten und haben nichts richtiges gefunden.
Deshalb melde ich mich hier.

Gruss
kakashi1997
Th0mKa
Th0mKa 15.01.2016 um 09:39:16 Uhr
Goto Top
Moin,

die SuFu waere dein Freund gewesen.
delage32 zum loeschen von alten ordnern

VG,

Thomas
114757
Lösung 114757 15.01.2016, aktualisiert am 19.01.2016 um 16:42:14 Uhr
Goto Top
Powershell Einzeiler:
gci 'C:\ordner' | ?{$_.PSISContainer -and !(gci $_.FullName -Recurse | ?{$_.LastWriteTime -ge (get-date '01.10.2014')})} | remove-item -Force -Recurse  
Gruß jodel32
kakashi1997
kakashi1997 15.01.2016 um 10:58:59 Uhr
Goto Top
Hallo Thomas

Danke für die Antwort ich werde es anschauen

Gruss

kakashi1997
kakashi1997
kakashi1997 15.01.2016 um 10:59:58 Uhr
Goto Top
Hallo jodel32

Ich teste es mal wird aber wahrscheinlich ein wenig dauern, da es über 1000 Ordner sind

Gruss
kakashi1997
114757
Lösung 114757 15.01.2016, aktualisiert am 19.01.2016 um 16:45:06 Uhr
Goto Top
Zitat von @kakashi1997:
Ich teste es mal wird aber wahrscheinlich ein wenig dauern, da es über 1000 Ordner sind
Ja nee, aber bitte vorher Backup X)
Du kannst das ganze auch erst mal simulieren wenn du hinten noch ein -whatif an die Zeile anhängst, dann zeigt die Kommandozeile nur an was sie machen würde anstatt es auszuführen.
kakashi1997
kakashi1997 15.01.2016 um 11:36:41 Uhr
Goto Top
ja das ist mir klar wäre nicht so toll wenn plötzlich das falsche weg wäre XD
Joe2011
Joe2011 15.01.2016 um 12:13:18 Uhr
Goto Top
Moin Moin.

Es gibt ansonsten noch das sehr kleine aber sehr feine Kommandozeilen-Tool "delage32". http://www.horstmuc.de/wbat32d.htm

Gruß

Joe
kakashi1997
kakashi1997 19.01.2016 aktualisiert um 16:44:50 Uhr
Goto Top
Hallo allerseits ich habe das ganze nochmals durchgegangen und habe jetzt eine Lösung gefünden mit Mailversand um später die Gruppen manuell zu entfernen.
$c = '\\tel-o1-nascl003\abt$'  

$a = gci $c

$log = 'c:\logfile.txt'  

Foreach ($b in $a)
{
	$d = $c + '\' + $b.tostring()  
	$m = gci $d -recurse | Where-Object {$_.LastWriteTime -ge (get-date '01.10.2014')} | measure    
	if ($m.count -lt 1) 
	{
		remove-item $d -force -recurse -whatif
		write-output $b >> $log
	}
	echo $d 'erledigt'  

}
$datei = Get-content C:\Logfile.txt
	Send-MailMessage -To "test@azmedien.ch" -From "abt@azmedien.ch" -Subject "Zu loeschende AD-Gruppen der Ordner" -Body ($datei | out-string) -smtpServer "test.corp.local"  
	remove-item $log
gruss
kakashi1997