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, 2922 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
Powershell - Zeilen in einer csv löschen bis (7)

Frage von Franz-Josef-II zum Thema Batch & Shell ...

Windows Server
PowerShell Inhalt einer csv Datei löschen (4)

Frage von makaroni zum Thema Windows Server ...

Exchange Server
gelöst Eine Raumliste in der Powershell löschen (2)

Frage von Gnrdolf zum Thema Exchange Server ...

Batch & Shell
gelöst Löschen von Dateien nach bestimmten Zeitmuster (8)

Frage von NetzwerkDude zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
SSL Zertifikat für HTTPS (33)

Frage von Hendrik2586 zum Thema Verschlüsselung & Zertifikate ...

Grafikkarten & Monitore
24" oder 27" mit Full HD oder doch mehr Auflösung? (21)

Frage von brutzler zum Thema Grafikkarten & Monitore ...

Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...