Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Mit Powershell Dateien löschen

Frage Entwicklung Batch & Shell

Mitglied: StefanLausL

StefanLausL (Level 1) - Jetzt verbinden

15.01.2013 um 11:33 Uhr, 2877 Aufrufe, 5 Kommentare

Hallo,

folgendes Problem:

Aus einem Verzeichnis sollen alle Dateien, welche in Unterordner liegen gelöscht werden,
die Älter als 30 Tage sind.
Bleiben in einem Ordner keine Dateien mehr übrig, dann soll der gesamte Ordner gelöscht werden.
Bestimmte Ordner müssen komplett ausgeschlossen werden.

Da ich keine Ahnung von Powershell habe, habe ich aus dem Forum einige ähnliche Skripte zu einem Skript zusammengefasst.

Leider funktioniert das nicht wirklich.
Es werden nur die Dateien gelöscht.
Die Ordner bleiben stehen.

Hier das Skript:

get-childitem "C:\temp\delete" -recurse | where {$_.lastwritetime -lt $DatumVor30Tagen -and -not $_.psiscontainer -and $_.mode -notmatch "NichtLoeschen1"} | where {$_.Name -notmatch "NichtLoeschen1|NichtLoeschen2"} |% {remove-item $_.fullname -force -verbose -whatif }

oder auch das:

Get-ChildItem "C:\temp\delete"| where {$_.lastwritetime -lt $DatumVor30Tagen} | where {$_.Name -notmatch "NichtLoeschen1|NichtLoeschen2" } | Foreach { Get-ChildItem $_.pspath | Remove-Item -recurse -whatif }


Beide Version funktionieren nur so Halb.

Für Eure Hilfe wäre ich sehr dankbar.

Mitglied: Coreknabe
15.01.2013 um 13:45 Uhr
Hi,

sicher hast Du schon ausgiebig die Suchfunktion genutzt? Einmal die hier im Forum und auch bei Herrn Google?
http://www.administrator.de/forum/dateien-l%C3%B6schen-%C3%A4lter-30-ta ...
Bitte warten ..
Mitglied: StefanLausL
15.01.2013 um 14:57 Uhr
Hi,

auch das hatte ich gefunden.
Unglaublich oder ?

Hab schon alle hier angegebenen Beispiel ausprobiert.
Letzter Stand siehe oben
Bitte warten ..
Mitglied: Coreknabe
15.01.2013 um 15:00 Uhr
Da habe ich dann nicht geahnt, was Du schon alles probiert hast. Entschuldige bitte vielmals.
Bitte warten ..
Mitglied: filippg
15.01.2013 um 20:20 Uhr
Hallo,

ich würde spontan tippen, dass du mit "-not $_.psiscontainer" in der obersten Zeile die Ordner alle ausfilterst - aber das hast du ja bestimmt auch schon gefunden - "Unglaublich oder ?"

Gruß

Filipp
Bitte warten ..
Mitglied: StefanLausL
16.01.2013 um 08:35 Uhr
Auch das hatte ich ausprobiert.

Ich bin langsam der Meinung das man das Skript in zwei Schritten ausführen muss.
Einmal alle Dateien aus den Ordnern löschen ausgenommen Ordner xy und danach
ein weiterer Schritt der dann die leeren Ordner löscht.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch mit forfiles - Dateiendung filtern - Dateien löschen (2)

Frage von mschaedler1982 zum Thema Batch & Shell ...

Windows Server
gelöst PS Dateien löschen mit 0kb (4)

Frage von Florian86 zum Thema Windows Server ...

Windows Server
Dateien löschen mit Forfiles, welche älter als x Tage sind (4)

Frage von kellbidden zum Thema Windows Server ...

Batch & Shell
gelöst Powershell - Dateien aus verschiedenen Arrays - Attribute vergleichen (5)

Frage von Giffas zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Festplatten, SSD, Raid
PC stellt nach dem Bios ab (19)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

iOS
16 iPads zentrall verwalten (18)

Frage von simonlohr zum Thema iOS ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...

Microsoft Office
gelöst VBA Excel Problem mit UserForm, ListBox und TextBox (12)

Frage von abuelito zum Thema Microsoft Office ...