knallster
Goto Top

Batch-Datei: Ordner löschen, falls bestimmte Datei nicht vorhanden

Hallo,

ich möchte gerne im Verzeichnis D:\ABC alle Unterordner löschen, in denen keine Datei mit der Endung .xyz vorhanden ist. Wie könnte man sowas umsetzen?

Viele Grüße
Jan

Content-Key: 360562

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

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

Mitglied: 135111
Solution 135111 Jan 10, 2018 updated at 12:00:39 (UTC)
Goto Top
Powershell:
gci "D:\ABC" -Directory | ?{$_.GetFiles().Extension -notcontains '.xyz'} | remove-item -Force -Recurse  
Batch
@echo off
for /d %%a in ("D:\ABC") do (dir "%%a\*.xyz" || rd "%%a" /s /q)  
Member: knallster
knallster Jan 10, 2018 at 13:42:31 (UTC)
Goto Top
Hallo fuerte,

das hat mit Powershell einwandfrei funktioniert. Vielen Dank, Du hast mir eine Menge Arbeit erspart!

Viele Grüße
Jan
Member: swiss5-11
swiss5-11 Mar 24, 2018 at 17:56:47 (UTC)
Goto Top
Und wie kann ich mit dem Powershell-Befehl mehrere Dateiendungen als "Suchkriterium" festlegen? Also nicht nur .xyz, sondern auch noch .xxx und .yyy
Danke schon mal für die Antwort! face-smile
Mitglied: 135799
135799 Mar 24, 2018 at 18:06:46 (UTC)
Goto Top
gci "D:\ABC" -Directory | ?{$_.GetFiles().Extension -notmatch '\.(xyz|xxx|yyy)$'} | remove-item -Force -Recurse  
Member: swiss5-11
swiss5-11 Mar 24, 2018 at 18:17:23 (UTC)
Goto Top
Dankeschön!
Gäbe es auch eine Möglichkeit in einem Verzeichnis alle Dateien (inklusive der Dateien in Unterverzeichnissen) mitden Endungen .xxx und .yyy zu löschen?
Mitglied: 135799
135799 Mar 24, 2018 updated at 19:23:57 (UTC)
Goto Top
gci 'D:\Abc\*' -File -Recurse -Include *.xxx,*.yyy -Force | del -Force  
Wie wärs mal mit Handbuch lesen anstatt hier fremde Threads mit anderen Fragen zu fluten?!
Member: swiss5-11
swiss5-11 Mar 26, 2018 at 14:32:51 (UTC)
Goto Top
Entschuldige bitte :/
Trotzdem danke!