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

Bestimmte Ordner Suchen und Löschen

Frage Entwicklung Batch & Shell

Mitglied: stichy

stichy (Level 1) - Jetzt verbinden

23.10.2009, aktualisiert 16:26 Uhr, 7800 Aufrufe, 7 Kommentare

Hallo Community,

hab hier schon fleisig im Bereich Batch&Shell gesucht und auch einige nützliche Sachen gefunden aber mir fehlen noch die letzten 5% bis zum Ziel. Wollte jetzt nicht deswegen einen neuen Beitrag aufmachen. Vielleicht kannst du mir weiterhelfen. Folgende Situation.
Habe eine Ordnerstruktur (Tiefe zwischen 4 und 8). Diese Struktur wird immer dann kopiert wenn ein neues Projekt begonnen wird.

xcopy C:\Projekt_xx C:\Projekt_yy /T /E

Die kopierte Ordnerstruktur schaut so in etwa aus:
Projekt_yy\Ordner_A\Version1.0\
Projekt_yy\Ordner_A\Version2.1\
Projekt_yy\Ordner_B\Version0.2\
Projekt_yy\Ordner_B\Version1.5\
Projekt_yy\Ordner_C\Ordner_D\Version1.0\
usw.

Möchte in der kopierten Ordnerstruktur alle Ordner löschen, die mit Version... beginnen.

Befehl steht in Batchdatei:
for /f "usebackq" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @echo rd /s /q %%i

jetzt werden alle Ordner angezeigt in denen sich ein Ordner mit Version... befindet aber nicht gelöscht.

Wie muss der Befehl ausschauen, damit diese auch gelöscht werden. Ich hoffe du kannst mir helfen.

Danke.

Gruß stichy
Mitglied: TsukiSan
23.10.2009 um 16:39 Uhr
ersetze
@echo
durch
del

dann löscht "es".

Gruß
Tsuki
Bitte warten ..
Mitglied: stichy
23.10.2009 um 18:05 Uhr
Hallo TsukiSan,

wenn ich folgenden Befehl
for /f "usebackq" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @echo rd /s /q %%i
wird folgendes im CMD Fenster angezeigt:
rd /s /q E:\batch_test\Brenner\BurnAware\Version2.3.8
rd /s /q E:\batch_test\Brenner\BurnAware\Version2.4.0
rd /s /q E:\batch_test\Brenner\CDBurnerXP\Version4.2.006.1748
rd /s /q E:\batch_test\Brenner\FinalBurner\Version2.13.0.200
rd /s /q E:\batch_test\Brenner\ImgBurn\Version2.5.0.0
rd /s /q E:\batch_test\Brenner\InfraRecorder\Version0.50.0
rd /s /q E:\batch_test\Browser\Apple
rd /s /q E:\batch_test\Browser\Avant
rd /s /q E:\batch_test\Browser\Chrome\Version4.0.220.01Beta
rd /s /q E:\batch_test\Browser\Opera\Version10.00Build01750
rd /s /q E:\batch_test\Browser\Opera\Version10.10Build01833Unite

habe nun den Befehl abgewandelt wie du beschrieben hast
for /f "usebackq" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do del rd /s /q %%i
wird folgendes im CMD Fenster angezeigt:
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\Browser\Apple konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\Browser\Avant konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden
E:\batch_test\rd konnte nicht gefunden werden

Ich hoffe das hilft jetzt etwas weiter.
Bitte warten ..
Mitglied: 60730
23.10.2009 um 19:45 Uhr
n abend

wenn ich folgenden Befehl
for /f "usebackq" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @echo rd /s /q %%i
habe nun den Befehl abgewandelt wie du beschrieben hast
for /f "usebackq" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do del rd /s /q %%i

Nimm beide Zeilen - kopiere Sie in je eine neue Textdatei und gib dann in einer Dosbox
fc datei1.txt datei2.txt
ein

Oder einfacher:
do del rd?
do rd!

Gruß

btw: Bastla & Biber - die für diese Schreibweise do echo bekannt sind - schreiben das mit dem "Echo - zu Testzwecken" auch immer dazu.
Bitte warten ..
Mitglied: stichy
23.10.2009 um 19:56 Uhr
Hallo TimoBeil,

vielleicht steh ich gerade auf dem Schlauch. Hab den fc Befehl durchgeführt. Es werden beide Textdateien miteinander verglichen. Das habe ich zumindest schon einmal herausgefunden. Wie hilft mir denn jetzt das ganze weiter? Sorry, für die vielleicht blöde Frage. Aber ich komm nicht weiter.

Es sollen einfach in dem Ordner + mehrerer Unterordner einfach alle Ordner gelöscht werden, die mit "Version..." beginnen.
Die "Version.." Ordner sind ohne Inhalt.

Gruß stichy
Bitte warten ..
Mitglied: 60730
24.10.2009 um 17:02 Uhr
Hallo Echo - Hallo stichy

der FC Befehl sollte dir doch nur den Unterschied zeigen, den du da angestellt hast..

Falls du aber noch eine Hilfestellung brauchst...

Mit welchem Befehl löscht man Dateien?
Mit welchem Befehl löscht man Ordner?

Willst du Ordner oder Dateien löschen?
Wie muß dann der Befehl dazu lauten?

@echo rd /s /q %%i
habe nun den Befehl abgewandelt wie du beschrieben hast
do del rd /s /q %%i

Do del or not do rd - das ist wohl keine Frage...
echo sollte raus - nicht del rein
Bitte warten ..
Mitglied: Biber
25.10.2009 um 00:51 Uhr
Moin stichy,

bevor sich das hier noch länger hinzieht:
TsukiSan meinte (wie auch T-Mo geschrieben hat):
  • Wenn der Befehl RD ausgeführt statt angezeigt werden soll, dann lass das "ECHO" einfach weg.
  • Verwende "..DO RD...." statt "DO ECHO RD...".

Also sollte diese Zeile...
01.
for /f "usebackq" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @echo rd /s /q %%i
noch schnell ergänzt werden, damit auch Datei/Verzeichnisnamen mit Leerzeichen verarbeitet werden:
01.
for /f "usebackq Delims=" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @echo rd /s /q "%%i"
(siehe deine "...Browser\Apple" und "..Browser\Avant"-Anzeige)

Außerdem, damit beim Löschen nix kaputtgeht und wenn es stimmt, was du schreibst:
Die "Version.." Ordner sind ohne Inhalt.
...dann [dringender Tipp!]:
Lass die beiden Schalter /s und /q des RD-Befehls weg (Unterverzeichnisse/Dateien gibt es ja nicht laut Plan)

Bleibt:
01.
@for /f "usebackq Delims=" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @echo rd "%%i"
Wenn bzw. nachdem diese Zeile mit "@echo" hinreichend getestet ist, lösche das Wort "@echo" raus.
01.
@for /f "usebackq Delims=" %%i IN (`dir E:\batch_test\Version*.* /s /b /ad`) do @rd  "%%i"
Die letzte Zeile kann dann als Batch "produktiv" gehen und alle anderen Versuchsvarianten gelöscht werden.

Grüße
Biber
Bitte warten ..
Mitglied: stichy
25.10.2009 um 02:36 Uhr
Dankeschön TimoBeil und Biber.

Mit eurer Hilfe bin ich jetzt am Ziel angelangt und mein Batchfile so angepasst, dass die passenden Ordner (Version...) ohne Inhalt gelöscht werden.

Danke nochmals für eure Hilfe.

Ich möchte vieles mit Batchfiles lösen aber mir fehlt einfach noch etwas Erfahrung.

Gruß stichy

PS: Biber dein letzter Tip ist passt genau. Funktioniert wunderbar.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(3)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 10
Löschen von Ordner mit Dateien (3)

Frage von jerry32 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...