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-Key: 293197

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

Printed on: April 23, 2024 at 12:04 o'clock

Member: Kuemmel
Kuemmel Jan 15, 2016 at 08:16:43 (UTC)
Goto Top
Hi,
wie wäre es mit einem simplen Script? Tante Google müsst da helfen können.

Gruß
Kümmel
Member: kakashi1997
kakashi1997 Jan 15, 2016 at 08:23:45 (UTC)
Goto Top
Hallo Kümmel

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

Gruss
kakashi1997
Member: Th0mKa
Th0mKa Jan 15, 2016 at 08:39:16 (UTC)
Goto Top
Moin,

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

VG,

Thomas
Mitglied: 114757
Solution 114757 Jan 15, 2016, updated at Jan 19, 2016 at 15:42:14 (UTC)
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
Member: kakashi1997
kakashi1997 Jan 15, 2016 at 09:58:59 (UTC)
Goto Top
Hallo Thomas

Danke für die Antwort ich werde es anschauen

Gruss

kakashi1997
Member: kakashi1997
kakashi1997 Jan 15, 2016 at 09:59:58 (UTC)
Goto Top
Hallo jodel32

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

Gruss
kakashi1997
Mitglied: 114757
Solution 114757 Jan 15, 2016, updated at Jan 19, 2016 at 15:45:06 (UTC)
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.
Member: kakashi1997
kakashi1997 Jan 15, 2016 at 10:36:41 (UTC)
Goto Top
ja das ist mir klar wäre nicht so toll wenn plötzlich das falsche weg wäre XD
Member: Joe2011
Joe2011 Jan 15, 2016 at 11:13:18 (UTC)
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
Member: kakashi1997
kakashi1997 Jan 19, 2016 updated at 15:44:50 (UTC)
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