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
GELÖST

Unterordner mit gleichem Namen löschen

Frage Sonstige Systeme

Mitglied: klamsl

klamsl (Level 1) - Jetzt verbinden

29.03.2007, aktualisiert 19.04.2007, 8199 Aufrufe, 6 Kommentare

Zyklisches Löschen von Unterordnern mit Inhalt in einer sich ständig vergrößernden Verzeichnisstrucktur

Hallo,

folgendes Problem. Ich habe ein Programm, was wav-Files generiert und diese in einer nach Datum und Ordnungsnummer strukturierten Dateistruktur ablegt, zum Beispiel "D:\Jahr\Monat\Tag\Ordnungsnummer\Inhalt.wav".

Jetzt ist das Problem, das ich den Ordner und die beinhaltenden Wav-Dateien nicht speichern möchte. In diesem Fall befinden sich diese immer im Ordner mit Namen 000000000000. Der Ordnername bleibt dabei immer gleich, nur die Position verändert sich. Ich denke dies sollte relativ leicht mit einer Batchdatei zu machen sein, die man dann zum Beispiel stündlich über den Taskplaner starten lässt.

Leider sind meine Kenntnisse in Batchprogrammierung ziemlich begrenzt, kann mir da wer auf die Sprünge helfen?

Danke im Vorraus.

Klamsl
Mitglied: bastla
29.03.2007 um 18:21 Uhr
Hallo klamsl!

Wenn alle Ordner mit dem Namen "000000000000" unterhalb von "D:\" (vielleicht wäre es etwas sicherer, "D:\Jahr" als Ausgangspunkt zu nehmen) samt Inhalt gelöscht werden sollen, würde das etwa so gehen:
01.
for /f "delims=" %%i ('dir D:\000000000000 /s /b /ad') do @echo rd /s /q "%%i"
Das "echo" steht zum Testen drin - erst wenn Du es entfernst, wird wirklich gelöscht, sonst nur der Löschbefehl angezeigt.

Grüße
bastla
Bitte warten ..
Mitglied: Farbauti
03.04.2007 um 19:23 Uhr
Etwas korrekter müsste es heißen:

01.
for /f "usebackq" %%i IN (`dir D:\000000000000 /s /b /ad`) do @echo rd /s /q "%%i"
Wenn du die Zeile in einem CMD Fenster starten willst, musst du noch %%i durch %i ersetzten.

Und wenn du sicher bist, die richtigen Dirs zu erwischen, nimm das @echo raus; wie bastla schon schrieb.

Gruß, Farbauti.
Bitte warten ..
Mitglied: bastla
03.04.2007 um 20:09 Uhr
Hallo Farbauti!

Welchen Vorteil bringt die Verwendung von "usebackq"?

Grüße
bastla
Bitte warten ..
Mitglied: Farbauti
03.04.2007 um 21:13 Uhr
Hallo bastla,

ohne das usebackq wird bei mir der Dir-Befehl in den Backquoutes (=die 'falschen' Anführungsstriche) nicht ausgeführt.
Unter XP sagt die Hilfe (for /?):
oder, unter Verwendung der Option "usebackq":
FOR /F ["Optionen"] %variable IN (Dateiensatz) DO Befehl [Parameter]
FOR /F ["Optionen"] %variable IN ('Zeichenkette') DO Befehl [Parameter]
FOR /F ["Optionen"] %variable IN (`Befehl`) DO Befehl [Parameter]


Gruß, Farbauti.
Bitte warten ..
Mitglied: bastla
03.04.2007 um 21:22 Uhr
Hallo Farbauti!

Wenn Du genau hinsiehst (oder es per "copy & paste" versuchst), wirst Du bemerken, dass ich Version 2 (also mit Apostroph) verwendet habe (funktioniert auch ohne "usebackq").

Und wenn Du übrigens, wie bei Deiner Version, auf "delims=" verzichtest, werden Pfade mit Leerstellen nicht vollständig ausgegeben ...

Grüße
bastla
Bitte warten ..
Mitglied: klamsl
19.04.2007 um 17:11 Uhr
Super, danke hat geklappt.
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (9)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...