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 Batch - Ordner löschen - mit Platzhalter

Mitglied: ebimail

ebimail (Level 1) - Jetzt verbinden

23.12.2007, aktualisiert 18.10.2012, 17843 Aufrufe, 9 Kommentare

Hey,

da hätte ich noch eine Frage,

könnte man folgenden Code nicht einfacher gestalten? Wieso kann man keine Ordner löschen indem man sie auch mit Platzhaltern identifiziert?

Hier ist mein alternativ Code:
01.
@echo off 
02.
Setlocal EnableDelayedExpansion 
03.
 
04.
FOR /F %%i in ('dir /b "alte_Sicherung*"') do ( 
05.
set Name=%%i && del !Name! /F /S /Q && RMDIR !Name!/S /Q 
06.
)
Liebe Grüße
Mitglied: TuXHunt3R
23.12.2007 um 22:07 Uhr
Solche Sachen habe ich auch schon probiert, bei mir hat es auch nie geklappt. Musste das Ganze auch immer mit einem dir und einer FOR-Schleife lösen. Schick doch mal eine PN an Biber oder bastla [edit] mit einem Link zu diesem Beitrag drin [/edit], eventuell wissen unsere allseits geliebten Batch-Götter mehr.
Bitte warten ..
Mitglied: Dani
23.12.2007 um 22:07 Uhr
Abend ebimail,
wenn du nur Verzeichnisse löschen möchtest, kannst du doch den del - Befehl vergessen.

So sollte es auch gehen:
01.
@echo off 
02.
for /f %%i in ('dir /b "alte_Sicherung*"') do rmdir /s /q "%%i"
Grüße
Dani
Bitte warten ..
Mitglied: ebimail
23.12.2007 um 22:10 Uhr
Ich möchte aber neben den Verzeichnissen auch die Dateien löschen, deswegen beide Befehle.

Liebe Grüße


Würde mich freuen wenn jemand noch eine Idee hat.
Bitte warten ..
Mitglied: future.former
23.12.2007 um 22:24 Uhr
ich kann zwar an dieser stelle nicht weiterhelfen, aber wo finde ich eine komplette dokumentation über die batch-sprache ?
Bitte warten ..
Mitglied: bastla
24.12.2007 um 07:55 Uhr
Hallo ebimail!

Mit der von Dani vorgeschlagenen Zeile werden natürlich auch die in den zu löschenden Verzeichnissen enthaltenen Dateien gelöscht - bitte einmal testen.

Der Ordnung halber vielleicht noch der Hinweis, dass mit dem zusätzlichen "dir"-Schalter "/ad" die Schleife nur Verzeichnisse behandelt, was Du einfacher auch mit "for /d" haben kannst:
01.
for /d %%i in ("alte_Sicherung*.*") do rd /s /q "%%i"
Grüße
bastla
Bitte warten ..
Mitglied: bastla
24.12.2007, aktualisiert 18.10.2012
Hallo future.former!

Als Ansatzpunkt kannst Du in der Windows-Hilfe nach dem Stichwort "cmd" suchen (vor allem auch die "Ergebnisse der Volltextsuche" beachten).

Hier im Forum findest Du neben einigen Links unter Batch & Shell zB diesen Kommentar (mit Zusatznutzen in Form eines Batches zum Aufruf der Windows-Hilfe von der Kommandozeile) von Biber, dessen einschlägige Tutorials ich ebenfalls ausdrücklich empfehlen möchte.

Grüße
bastla
Bitte warten ..
Mitglied: ebimail
24.12.2007 um 13:59 Uhr
01.
for /d %%i in ("alte Sicherung*.*") do rd /s /q "%%i" 

Wohw! Vielen Dank!

1) warum geht das nur mit *.* und warum reicht nicht *

2) warum ist hier kein "delims=" nötig?

3) Vll. könnt ihr mir ja noch erklären warum ich bei meinem Code immer das Problem hatte, das am Ende des "gefundenen Verzeichnisses" immer noch ein Leerzeichen dran war, welches ich erst wegmachen musste um den del. befehl nutzen zu können?

01.
FOR /F "delims=" %%i in ('dir /b "alte Sicherung*"') do ( 
02.
set Name=%%i && del "!Name:~0,27!" /F /S /Q && RMDIR "!Name:~0,27!" /S /Q 
03.
)
Liebe Grüße
Bitte warten ..
Mitglied: bastla
24.12.2007 um 14:11 Uhr
Hallo ebimail!

1) Sollte auch mit * funktionieren, aber wenn nichts gegen *.* spricht, tendiere ich zu dieser Schreibweise.

2) Hier wird kein "for /f" verwendet.

3) Versuch es mit zusätzlichen Anführungszeichen - etwa so:
01.
FOR /F "delims=" %%i in ('dir /b "alte Sicherung*"') do ( 
02.
set "Name=%%i" && del "!Name:~0,27!" /F /S /Q && RMDIR "!Name:~0,27!" /S /Q 
03.
)
Diese (undokumentierte) Schreibweise
01.
set "Variable=Wert"
habe ich (natürlich) erstmals bei Biber gesehen und verwende sie fast ausnahmslos. Ihr Vorteil ist, dass Werte mit enthaltenen (inklusive am Ende befindlichen) Leerstellen "zusammengehalten" werden, ohne die Anführungszeichen ebenfalls in die Variable übernehmen zu müssen, was gelegentlich (zB für eine "token"-Zerlegung) durchaus nützlich sein kann. Negative Nebenwirkungen sind mir bisher nicht aufgefallen.

Grüße
bastla
Bitte warten ..
Mitglied: ebimail
26.12.2007 um 16:07 Uhr
Ich danke vielmals!

Liebe Grüße!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Ordner löschen per Batch
gelöst Frage von MarcysBatch & Shell3 Kommentare

Hallo, Ich möchte aus einem Verzeichnis einen den Ordner "MC" löschen: C:\Programme\HYP\MC Dies möchte ich per Batch machen. Wie ...

Batch & Shell
Reg query wert als platzhalter in batch
Frage von 136298Batch & Shell4 Kommentare

guten morgen, da ich gerade eine phase nach input habe wäre ich dankbar wenn ihr mir hierbei helfen könnt ...

Datenbanken
Platzhalter für VBA Code
gelöst Frage von Dr.CornwallisDatenbanken4 Kommentare

Hi zusammen, viele von euch VBA Cracks werden jetzt bestimmt lachen aber ich schaffe es einfach nicht einen Platzhalter ...

Windows 7

Batch für User-TEMP-Ordner und Inhalte löschen

gelöst Frage von planetITWindows 72 Kommentare

Hallo, Beim Anmelden des Clients (Windows 7) soll der TEMP-Ordner des jeweiligen angemeldeten User geleert werden. die .bat hinterlege ...

Neue Wissensbeiträge
Suche Projektpartner

PC Recycling Projekte mit Flüchtlingen und Kids suchen Materialspenden und Mitmacher!

Erfahrungsbericht von NettePCyclePiraten vor 12 StundenSuche Projektpartner1 Kommentar

Hallöchen liebe Kollegen, ich betreue zwei PC-Gruppen im Raum Dortmund: "Ne#e PCycle Pir@ten" & "PCschr@uber Br@mbauer" Wir sind eine ...

iOS
IOS 12.2 beta und OpenVPN iPad und iPhone
Erfahrungsbericht von magicteddy vor 19 StundeniOS

Moin, kleiner Hinweis an die experimentierfreudigen unter Euch: Bei der aktuellen beta gibt es ein Problem im Zusammenspiel zwischen ...

Vmware
VMware Tools 10.3 verfügbar
Information von sabines vor 23 StundenVmware

Eine Sicherheitslücke wird mit den Tools der Version 10.3 geschlossen, die Tools müssen auf jeder VM aktualisiert werden. Näheres ...

Apple

Apple aktualisiert MacBook Pro, mit bis zu sechs Kernen

Information von Vision2015 vor 3 TagenApple

Jawohlchen das Warten hat sich gelohnt :-) Apple aktualisiert MacBook Pro Frank

Heiß diskutierte Inhalte
Microsoft
Dringend: Nach neustart kein zugriff mehr per RDP möglich - vermutlich wegen gelöschter SID in AD
gelöst Frage von sven784230Microsoft30 Kommentare

Hallo zusammen, gerade hat ein Server 2012 (terminalserver + Active directory) einen geplanten Neustart durchgeführt, wenn ich mich jetzt ...

Exchange Server
Exchange 2013 - Update schlägt fehlt
gelöst Frage von chb1982Exchange Server20 Kommentare

Hallo zusammen, kann sich jemand einen Reim auf die unten stehenden Fehlermeldung machen? Sie tritt auf beim Update von ...

Firewall
Pfsense - Package Manager - Unable to retrieve package information
Frage von nubyFirewall12 Kommentare

Hallo! Ich habe mit verschiedenen Versionen von Pfsense Probleme neue Packages herunterzuladen. Bei Pfsense 2.3.1 oder 2.3.5 heißt es: ...

Verschlüsselung & Zertifikate
Windows PKI root Zertifikate werden nicht aktualisiert
Frage von Chaser21aVerschlüsselung & Zertifikate10 Kommentare

Hallo Community, wir haben eine eigene Unternehmens PKI im Einsatz. Aktuell gibt es das Problem, dass mehrere ROOT- und ...