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 VBS Script um bestimmte Dateien die älter als x Tage sind und im Namen -xyz- enthalten zu löschen

Mitglied: NeoCrown

NeoCrown (Level 1) - Jetzt verbinden

2011/10/03, aktualisiert 2012/10/18, 3373 Aufrufe, 6 Kommentare

Hallo zusammen

Ich suche schon lange verzweifelt ohne Erfolg ein VBS Script, mit dem ich Dateien aus einem Ordner löschen kann,
die älter als x Tage sind und im Namen ein bestimmten Teil/Wort enthalten zB. *xyz*.
Wenn mir vieleicht jemand ein Beispiel hätte, um dieses Problem zu lösen, wäre ich sehr dankbar.
Ich darf nur ein VBS Skript verwenden, nichts anderes.

Grüsse NeoCrown
Mitglied: bastla
2011/10/03, aktualisiert 2012/10/18
Hallo NeoCrown und willkommen im Forum!

ZB: https://www.administrator.de/forum/l%c3%b6schen-von-alten-dateien-und-ve ...

Grüße
bastla
Bitte warten ..
Mitglied: NeoCrown
2011/10/04 um 08:49 Uhr
Hallo Bastla

Danke für deine Antwort. Leider nützt mir ein Ausschussverfahren nicht viel, da ich etwa 100 Ausschlüsse machen müsste.
Ich will wirklich nur Dateien die in meinem Fall zB. "BOOKINGSave201110030954" heissen löschen, also Wörter die den Teil
"Bookingsave2011" enthalten und älter als ein Tag sind.

Grüsse
Bitte warten ..
Mitglied: bastla
2011/10/04 um 09:24 Uhr
Hallo NeoCrown!

Und die Umkehrung von
If InStr(1, Exclude, Datei.Name & "#", vbTextCompare) = 0 Then
bekommst Du nicht selbst hin (Du hattest ja nur nach einem Beispiel gefragt)?

Im einfachsten Fall wäre das zB
If InStr(1, Datei.Name, "Bookingsave2011", vbTextCompare) <> 0 Then
oder (um nur solche zu "erwischen", bei denen der Suchbegriff am Anfang des Dateinamens steht)
01.
Suche = LCase("Bookingsave2011") 
02.
... 
03.
If LCase(Left(Datei.Name, Len(Suche))) = Suche Then
Beides übrigens ungetestet ...

Grüße
bastla
Bitte warten ..
Mitglied: NeoCrown
2011/10/04 um 11:47 Uhr
Hallo!

Nein ich krieg das nicht hin weil ich keine grosse Ahnung habe von VB Scripts :D
Habe ich vergessen zu erwähnen...

edit:

auf welches Script beziest Du dich überhaupt mit deiner Änderung?

möglicherweise krieg ichs dan hin =)

Grüsse
Bitte warten ..
Mitglied: bastla
2011/10/04 um 22:05 Uhr
Hallo NeoCrown!

Am leichtesten anpassbar sollte diese Version sein:
01.
Set fso = CreateObject("Scripting.FileSystemObject")  
02.
Set WSHShell = WScript.CreateObject("WScript.Shell")  
03.
'On Error Resume Next '## während der Testphase kontraproduktiv ## 
04.
 
05.
' * hier eigenen Bedürfnissen anpassen *  
06.
strOrdnerliste = "C:\Dokumente und Einstellungen\pweberling\Desktop\Ordnerliste.txt"  
07.
strAusschlussliste = "C:\Dokumente und Einstellungen\pweberling\Desktop\Ausschluss.txt"  
08.
Aufheben = 3 'Anzahl der Tage  
09.
' * Ende der Anpassungen *  
10.
 
11.
Set objOrdnerliste = fso.OpenTextFile(strOrdnerliste)  
12.
Verzeichnis = Split(objOrdnerliste.ReadAll, vbCrLF)  
13.
objOrdnerliste.Close  
14.
Set objAusschlussliste = fso.OpenTextFile(strAusschlussliste)  
15.
Exclude = "#" & Replace(objAusschlussliste.ReadAll, vbCrLF, "#") & "#" 
16.
objAusschlussliste.Close  
17.
 
18.
Heute = Date()  
19.
 
20.
For n = 0 To UBound(Verzeichnis)   
21.
    Set Ordner = fso.GetFolder(Verzeichnis(n))  
22.
    DeleteInFolder(Ordner)  
23.
Next  
24.
 
25.
Sub DeleteInFolder(Ordner)  
26.
Set Dateien = Ordner.Files  
27.
' Alle Dateien in diesem Ordner abklappern  
28.
For Each Datei In Dateien  
29.
    If Datei.DateLastModified < (Heute - Aufheben) Then 
30.
        'nur Dateien, deren Name nicht wie ein Eintrag der Ausschlussliste endet 
31.
        '(für exakte Übereinstimmung - außer Groß-/Kleinschreibung - wäre 
32.
        '"#" & Datei.Name & "#" 
33.
        'zu verwenden) 
34.
        If InStr(1, Exclude, Datei.Name & "#", vbTextCompare) = 0 Then 
35.
            On Error Resume Next 
36.
            WScript.Echo "-" &Datei.DateLastModified&" "&Datei.Path 'Datei.Delete 
37.
            If Err And Err <> 70 Then MsgBox "Unerwarteter Fehler (Code=" & Err & ")", vbCritical: WScript.Quit  
38.
            On Error Goto 0  
39.
        End If  
40.
    End If  
41.
Next 
42.
 
43.
'Unterordner abklappern, DeleteInFolder rekursiv aufrufen  
44.
For Each Unter In Ordner.SubFolders 
45.
    'nur Ordner, deren Name nicht wie ein Eintrag der Ausschlussliste endet 
46.
    If InStr(1, Exclude, Unter.Name & "#", vbTextCompare) = 0 Then  
47.
        DeleteInFolder(Unter) 
48.
        If (Unter.SubFolders.Count + Unter.Files.Count) = 0 Then WScript.Echo "--"&Unter.Path 'Unter.Delete 
49.
    End If 
50.
Next  
51.
End Sub
Grüße
bastla
Bitte warten ..
Mitglied: Biber
2011/10/15 um 16:21 Uhr
Moin NeoCrown,

Nachfrage: gibt es denn noch irgendwelche Bewegungen in diesem Beitrag oder kann ich den entsorgen?

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Basic

VBS Script: Dateien älter als x Tage löschen

gelöst Frage von KnuefiBasic4 Kommentare

Hallo zusammen, ich habe eine Frage. Ich bin auf der Suche nach ein Script das Dateien älter als x ...

Batch & Shell

Alle Datein löschen die älter als x Tage sind

Frage von Roadrunner0815Batch & Shell3 Kommentare

Hallo an Alle! Ich brauche mal einen kleinen Denkanstoß zu folgender Problemstellung Ich möchte: - auf einem Laufwerk K: ...

Windows Server

Dateien löschen mit Forfiles, welche älter als x Tage sind

Frage von kellbiddenWindows Server4 Kommentare

Hallo Ich habe ein Script geschrieben, um Unterverzeichnise in einem Folder zu löschen. Dazu habe ich ForFile benutzt. ForFile.exe ...

Windows Server

Powershell Script Backups auf Netzlaufwerk älter als x-tage löschen Monatssicherung

Frage von MarciMarc85Windows Server2 Kommentare

Hallo Ich bin in Powershell nicht wirklich fit. Und zwar benötige ich ein Script: Bei einem Kunden kopiere ich ...

Neue Wissensbeiträge
Windows 10
Windows 10 Oktober 2018 Update: Es ist wieder da
Tipp von Bowsette vor 6 StundenWindows 10

Ein neuer Versuch von Microsoft das Windows 10 Oktober 2018 Update, auch bekannt als 1809, an den Mann zu ...

Windows Server

Windows Server 2016: Achtung - ab heute gibt es wieder Express Updates

Information von kgborn vor 17 StundenWindows Server1 Kommentar

Kurze Info für Administratoren, die Windows Server 2016 per WSUS/SCCM mit Updates betanken. Ab heute gibt es für Windows ...

Windows Netzwerk
Windows Admin Center - Sagt was ihr braucht!
Tipp von Juanito vor 2 TagenWindows Netzwerk18 Kommentare

Hallo zusammen, der ein- oder andere hat sicherlich schon vom Windows Admin Center gehört. - Microsoft's neue Adminkonsole welche ...

Verschlüsselung & Zertifikate

Bitlocker-Verschlüsselung und -Monitoring ohne MBAM

Tipp von DerWoWusste vor 2 TagenVerschlüsselung & Zertifikate

Der Folgende Tipp beschreibt, wie man ohne MBAM die Verschlüsselung erzwingt und monitort. MBAM ist ein Enterprise-Benefit und somit ...

Heiß diskutierte Inhalte
Entwicklung
Meine Nachbarn sehen meinen Internet Trafic
gelöst Frage von beatnguEntwicklung51 Kommentare

Hallo Also ich wohne in einem Mehrparteien Haus mit 24 wohnungen. Meine nachbaren im letzten stock fummeln immer an ...

Microsoft Office
Lizenzierung
Frage von opc123Microsoft Office29 Kommentare

Hallo, eventuell ein oft bekanntes Thema. Office 365 ist mir zu teuer, da wir als Bildungsträger andere Konditionen beim ...

Windows 10
Windows 10 mit CRITICAL PROCESS DIED
Frage von liquidbaseWindows 1028 Kommentare

Das aktuelle Problem was ich habe steht bereits im Threadtitel. Etwas mehr zum Hintergrund soll nun folgen. Problemkind ist ...

Voice over IP
Andere Rufnummer bei abgehenden Gesprächen vom All-IP-Anschluß der Telekom anzeigen
Frage von vafk18Voice over IP19 Kommentare

Ich möchte bei abgehenden Gesprächen vom All-IP-Anschluß der Telekom meine Handynummer hinterlegen, damit ich Rückrufe jederzeit empfangen kann. Derzeit ...