Top-Themen

Aktuelle Themen (A bis Z)

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 Eine Schleife erstellen um ein Verzeichnis zu löschen, wenn eine bestimte Datei in einem anderen Verzeichnis existiert

Mitglied: wladislaw

wladislaw (Level 1) - Jetzt verbinden

25.04.2010 um 14:04 Uhr, 4164 Aufrufe, 7 Kommentare

Hallo zusammen,
ich bin Anfänger beim Scriptprogrammieren und komme damit nicht zu Recht eine Prüfung in eine Schleife aufzubauen. Kann mir jemand bitte helfen einen Script zu erstellen. Danke im Voraus.

ich habe mehrere Benutzerverzeichnise, wo noch 2 Unterverzeichnissen existieren ( z.B H:\Userdaten\User_1\Ordner_Neu und H:\Userdaten\User_1\Ordner_alt). Das Verzeichnis H:\Userdaten\User_1\Ordner_alt darf nur dann gelöscht werden wenn eine Datei z.B File1.txt im anderen Verzeichnis H:\Userdaten\User_1\Ordner_neu existiert. Und am Schlüss müsste dieser Löschvorgang bei jedem Benutzerverzeichnisen ( H:\Userdaten\User_1......bis User_n) wiederholt werden.
Mitglied: Biber
25.04.2010 um 14:54 Uhr
Hallo wladislaw,

willkommen im Forum.
Die einfachste Strategie für diese Aufgabe wäre vermutlich,
  • in allen Unterverzeichnissen unterhalb von "H:\Userdaten"
  • die Existenz einer Datei "File1.txt"
  • in einem End-Verzeichnis "Ordner_neu" zu prüfen
  • und dann das Parallelverzeichnis "Ordner_alt" wegzubratzen, falls vorhanden.

Dazu brauchst du allerdings keinen Batch, sondern nur einen Halbzeiler vom CMD-Prompt.
for /r "H:\Userdaten" %i in (file1.txt) do @if exist %i @if exist "%~dpi..\Ordner_alt" rd "%~dpi..\Ordner_alt" /s /q
Grüße
Biber
Bitte warten ..
Mitglied: LotPings
25.04.2010 um 15:46 Uhr
Hallo Biber,

ich mag mich täuschen, aber stellt dein Einzeiler auch sicher das die Datei File1.txt in einem "Order_neu" ist?
Das mag akademisch klingen, aber wenn Ordner_alt auch parallel zu anderen Dateien File1.txt in Ordnern beliebigen Namens existiert,
würden die auch gelöscht.

For /f "delims=" %A in ('dir /B/S H:\Userdaten\File1.txt ^|Findstr /i "Ordner_neu\\File1\.txt$" ') Do @echo RD /S /Q "%~fA\..\..\Ordner_alt" 
ungetestet, wenn die Ausgabe richtig erscheint das echo entfernen.
Diese Zeile könnte zwar einige Stellen auswerfen wo kein Ordner_alt existiert, aber bis auf die Fehlermeldung schadet es ja nicht.

Gruß
LotPings

Edit: fehlendes ' nachgereicht
Bitte warten ..
Mitglied: bastla
25.04.2010 um 16:06 Uhr
@LotPings
Ist sicher sicherer ...

... allerdings fehlte noch eine Kleinigkeit (und im Gegenzug ließe sich der Pfad zum "Ordner_alt" etwas verkürzen):
For /f "delims=" %A in ('dir /B/S H:\Userdaten\File1.txt ^|Findstr /i "Ordner_neu\\File1\.txt$"') Do @echo RD /S /Q "%~dpA..\Ordner_alt" 2>nul
Grüße
bastla
Bitte warten ..
Mitglied: LotPings
25.04.2010 um 16:20 Uhr
@bastla,
ist es nicht schön das wir aufeinander aufpassen
Schönen Sonntag noch...
Bitte warten ..
Mitglied: bastla
25.04.2010 um 16:29 Uhr
@LotPings
ist es nicht schön das wir aufeinander aufpassen
Finde ich auch ...

... und um entsprechenden Gerüchten gleich entschiedenst entgegenzutreten: Die (allermeisten ) Fehler in meinen Batches baue ich nicht ein, um festzustellen, ob Ihr auch genau schaut ...

Auch Dir einen schönen Sonntagsrest
bastla
Bitte warten ..
Mitglied: Biber
25.04.2010 um 18:28 Uhr
Moin Lord und Moin bastla,

natürlich, ich habe das Wichtigste (oder zumindest das Witzigste) vergessen... unterstützte Syntax, auf die man/frau erstmal gar nicht kommt.

for /r "H:\Userdaten" %i in (Ordner_neu\file1.txt) do @if exist %i @if exist "%~dpi..\Ordner_alt" rd "%~dpi..\Ordner_alt" /s /q
--> den Teilpfad in der Klammer hatte ich irgendwie wieder wegeditiert, weil ich das (unwichtigere) "Alt-Verzeichnis erst auf EXIST prüfen, dann löschen" noch reineditiert habe.
Dabei wäre DAS mir bei einem CMD-Schnellschuss vollkommen egal.

Aber ich finde es auch schön, wie wir hier aufeinander aufpassen.

Grüße
Biber
Bitte warten ..
Mitglied: wladislaw
25.04.2010 um 21:22 Uhr
Hallo zusammen,

ich habe diesen CMD-Befehl bei mir getestet und möchte sagen " Vielen DANK !!!!!! " Es funktioniert.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch-Skript um herauszufinden ob zugehörige Index-Datei im Verzeichnis existiert

Frage von DarkatohmBatch & Shell3 Kommentare

Hallo zusammen, folgendes möchte ich herausfinden: In einem Verzeichnis (C:\Temp\Alle) liegen zu einem Beleg drei verschiedene Dateien: Beleg.pdf Beleg.jpl ...

Batch & Shell

Datei aus Verzeichnis auslesen?

gelöst Frage von freshman2017Batch & Shell4 Kommentare

Hallo Ihr! Ich wollte mir gerade mit nachfolgendem Batch Befehl: alle darin befindlichen Bilder auflisten. Ausgabe: Wie kann ich ...

VB for Applications

Abfrage, ob Datei mit Variablem Wert existiert

gelöst Frage von AnrionVB for Applications12 Kommentare

Hallo Forum, Ich habe diesen Code: Jedoch funktioniert er nicht ganz wie er soll (bzw. gar nicht). Es soll ...

Batch & Shell

Batch Datei in zufälliges Verzeichnis navigieren

Frage von MarioBros778Batch & Shell4 Kommentare

Hey Leute, ich hätte da ein Frage: Ist es möglich mit einer cmd datei in ein zufälliges Verzeichnis zu ...

Neue Wissensbeiträge
Windows 7
Updategängelung auf Windows 10, die zweite
Information von Penny.Cilin vor 20 StundenWindows 7

Hallo, da Windows 7 im kommenden Jahr nicht mehr supportet wird, werden Nutzer von Window 7 home premium wieder ...

Internet
EU-Urheberrechtsreform: Zusammenfassung
Information von Frank vor 3 TagenInternet1 Kommentar

Auf golem.de gibt es eine Analyse von Friedhelm Greis, der das Thema EU-Urheberrechtsreform gut und strukturiert zusammenfasst. Zwar haben ...

Microsoft Office

Office365 Schwachstellen bei Sicherheit und Datenschutz

Information von Penny.Cilin vor 4 TagenMicrosoft Office7 Kommentare

Auf Heise+ gibt es einen Artikel bzgl. Office365 Schwachstellen. Das ist noch ein Grund mehr seine Daten nicht in ...

Sicherheit
Schwachstellen in VPN Clients
Tipp von transocean vor 6 TagenSicherheit2 Kommentare

Moin, es gibt Sicherheitslücken bei VPN Clients namhafter Hersteller, wie man hier lesen kann. Gruß Uwe

Heiß diskutierte Inhalte
Virtualisierung
Unix System virtualisieren
Frage von BananenmeisterVirtualisierung10 Kommentare

Hallo Zusammen, Ich möchte gerne eine Virtualisierungs-Software auf meinem kleinen ML Server installieren um einige Unix Systeme zu virtualisieren. ...

LAN, WAN, Wireless
Lancom und VLANs
Frage von TimmheLAN, WAN, Wireless10 Kommentare

Hallo an alle ich habe momentan ein sehr merkwürdiges problem bei dem ich nicht mehr weiter komme und hoffe ...

Hyper-V
Chaosbeseitigung in Domainlandschaft
Frage von Rolf935Hyper-V10 Kommentare

Hallo zusammen, ich hätte gerne mal ein paar praktische Tipps oder Hinweise. Derzeit haben wir einen NAS als Fileserver ...

Notebook & Zubehör
Hardware defekt ?
Frage von mausemuckelNotebook & Zubehör9 Kommentare

Hallo und ein schönes Osterfest an alle. Ich benötige mal euer Schwarm wissen. Ich habe hier ein Notebook Lenovo ...