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

03.10.2011, aktualisiert 18.10.2012, 3407 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
03.10.2011, aktualisiert 18.10.2012
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
04.10.2011 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
04.10.2011 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
04.10.2011 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
04.10.2011 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
15.10.2011 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 ...

VB for Applications

Vbs Script Hilfe

gelöst Frage von Dr.CornwallisVB for Applications3 Kommentare

Liebe Gemeinde, hat von euch zufällig jemand ein VBs Script das folgendes o.ä macht: Das Script wird per GPO ...

VB for Applications

Inhalt einer Excel Datei mit VBS Script ersetze, ändern

gelöst Frage von ManriqueVB for Applications10 Kommentare

Hallo an alle, die Aufgabe ist: in einer Excel Datei stehen in der ersten Zeile (Spaltenbeschriftung) die Werte betragnach ...

Microsoft Office

Ecxel per Script bearbeiten jeden Tag

gelöst Frage von MilordMicrosoft Office15 Kommentare

Moin Zusammen, ich hoffe die Frage ist hier halbwegs richtig. Und zwar habe ich folgendes "Problem". Wir in der ...

Neue Wissensbeiträge
Windows 10

Windows 10 kann XPS erzeugen aber nicht anzeigen ????

Erfahrungsbericht von Deepsys vor 2 StundenWindows 10

Heute schickt mir ein Kollegen eine E-Mail mit einer XPS-Datei vom Kunden im Anhang und fragt wie er diese ...

Exchange Server

1und1 IONOS: Probleme beim Mailversand mit Exchange

Information von reksierp vor 11 StundenExchange Server3 Kommentare

Hallo, seit Do, 17.1.19 etwa Mittags nimmt 1und1 IONOS keine Mails mehr über den Standard-Port SMTP 25 an. Nachdem ...

LAN, WAN, Wireless

Cisco Mikrotik VPN Standort Vernetzung mit dynamischem Routing

Anleitung von aqui vor 1 TagLAN, WAN, Wireless

1. Allgemeine Einleitung Das nachfolgende Tutorial ist eine Fortführung der hier bei Administrator.de schon bestehenden VPN Tutorials und beschreibt ...

Windows Mobile

Support für Windows Mobile endet im Dezember 2019

Information von transocean vor 2 TagenWindows Mobile

Moin, Microsoft empfiehlt als Alternative den Umstieg auf iOS oder Android, wie man hier lesen kann. Gruß Uwe

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Temporäre WLAN Verbindung für AD-Login
Frage von Christian.WidauerLAN, WAN, Wireless17 Kommentare

Hallo zusammen, ich weiß leider nicht unter welchem Begriff ich dafür suchen muss, daher habe ich bisher leider nichts ...

LAN, WAN, Wireless
Bekannte Drosselungen bei Providern ?
Frage von HenereLAN, WAN, Wireless15 Kommentare

Servus zusammen, in bereits angefangen, aber ich hoffe dass der Beitrag hier mehr Informationen bringt. Sind Portdrosselungen bzw gezielte ...

Windows Server
MSSQL Backup in Form von .sql einspielen
Frage von janosch12Windows Server14 Kommentare

Guten Morgen, wir verwenden das Tool SQLandFTPBackup ( ) zum sichern einiger MSSQL Datenbanken. Nun sichert das Toll die ...

Netzwerkmanagement
Reverse Proxy für TCP und UDP Anfragen
gelöst Frage von flxklsNetzwerkmanagement14 Kommentare

Hallo zusammen, ich besitze einen Rootserver, der nur eine öffentliche IP besitzt und auf dem mehrere VMs laufen. Da ...