Thomas Säuberli 11 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Hallo zusammen ich sichere mit Backup-Exec den Exchange erst mal auf eine Backup-to-Disk-Platte und dann von dort gemütlich auf Band. Nun macht die Exchange aber immer neue Ordner mit der Sicherung (IMG000001). Leider überschreibt er diese Ordner nicht neu und ich kriege immer mehr Ordner auf meiner Backup-to-Disk-Platte (IMG000001,IMG000002,IMG000003,IMG000004, usw.) Ich dachte mir nun, dass ich nach der Bandsicherung den Ordner einfach löschen lasse (rd /s /q d:\exchange\IMG000001) Da sich nun die Verzeichnissnamen ständig ändern müsste ich einen Platzhalter setzen können (z.Bsp. rd /s /q d:\exchange\IMG*). Das scheint bei Verzeichnissen aber nicht zu klappen :-( Gibt es doch einen Befehl oder eine Option dafür? Besten Dank für Eure Hilfe. Zitieren
BrainStorm 10 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Hallo Thomas, nicht direkt, aber mir einer FOR-Schleife sollte das gehen. for /d %%i in ("IMG*") do rd /s /q "%%i" – Alternativ auch elegant per Powershell ;) dir img* | Remove-Item -Recurse Zitieren
Thomas Säuberli 11 Geschrieben 1. April 2009 Autor Melden Geschrieben 1. April 2009 Hallo Brainstorm Ich kenne mich leider nicht so toll mit Batchprogrammierung aus. Ich passte Deinen Vorschlag so in meine Batchdatei ein: for %%i in ("IMG*") do rd /s /q d:\exchange\"%%i" Dabei erhalte ich folgende Meldung: "%%i" ist syntaktisch an dieser Stelle nicht verarbeitbar. Muss ich da noch etwas anpassen? – Ist auf einer XP-Kiste... da is nix mit PowerShell :-( Zitieren
BrainStorm 10 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Okay, auf dein Szenario angepasst Für die Kommandozeile (einfaches %): for /d %i in ("d:\exchange\IMG*") do rd /s /q "%i" Innerhalb einer Batchdatei musst du doppelt %% for /d %%i in ("d:\exchange\IMG*") do rd /s /q "%%i" – Thomas Säuberli schrieb: – Ist auf einer XP-Kiste... da is nix mit PowerShell :-( Geht trotzdem ;) Downloaddetails: Windows PowerShell 1.0 - Lokalisiertes Installationspaket für Windows XP (KB926140) Zitieren
Thomas Säuberli 11 Geschrieben 1. April 2009 Autor Melden Geschrieben 1. April 2009 Hallo Brainstorm Deine angepasste Befehlszeile hat voll eingeschlagen!! Vielen Dank! PowerShell gibt es doch erst ab Win2008? Zitieren
BrainStorm 10 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Thomas Säuberli schrieb: PowerShell gibt es doch erst ab Win2008? Nö, geht schon ab XPSP2 ;) Voraussetzung dafür ist .NET 2.0 Zitieren
d.stegemann 10 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Hallo, ich hätte auch noch die vbs Variante da... sStartfolder = "D:\Verzeich\nispfad"sSuchstring = "IMG" Set oFSO = CreateObject("Scripting.FileSystemObject") Set oFolder = oFSO.GetFolder(sStartfolder) For Each oFolder In oFolder.Subfolders If Left(oFolder.Name, Len(sSuchstring)) = sSuchstring Then If MsgBox("Datei """ & oFolder.Name & """ wird gelöscht " _ , 1, "Bestätigung") <> 1 _ Then WScript.Quit 'Delete_folder sStartfolder, oFolder.Name End If NextSub Delete_folder(startfolder, foldername)Set fso = CreateObject("Scripting.FileSystemObject")Set oFolder_del = fso.GetFolder("" & startfolder & "\" & foldername &"")oFolder_del.delete trueEnd Sub[/Code] Zwar ein bisschen spät dran, aber loswerden wollte ich es dann doch... Gruß Dirk Zitieren
BrainStorm 10 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Hallo Dirk, okay - der Preis für das längere Script geht an dich ;) Zitieren
d.stegemann 10 Geschrieben 1. April 2009 Melden Geschrieben 1. April 2009 Dafür hab ich auch ne "GUI" dabei :Þ Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.