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

Script zum löschen von Ordnern im Format jjjjttmmstdstdminmin, die älter als 14 Tage sind

Frage Entwicklung Batch & Shell

Mitglied: 52106

52106 (Level 1)

26.01.2011, aktualisiert 18.10.2012, 3820 Aufrufe, 9 Kommentare

Guten Tag,

ich benötige folgendes Script: Script zum löschen von Ordnern im Format jjjjttmmstdstdminmin, die älter als 14 Tage sind. Kann mir dazu jemand eine Vorlage schreiben? Danke
Mitglied: bastla
26.01.2011 um 13:50 Uhr
Hallo SBong1!

Das Namensformat enthält tatsächlich den Tag vor dem Monat?

Grüße
bastla
Bitte warten ..
Mitglied: 60730
26.01.2011, aktualisiert 18.10.2012
Servus,

warum sollen wir dir eine Vorlage schreiben?
Pass dir doch eine von vielen an
@bastla: Ich bewundere deine Geduld - oder ist dein Lieblingsfilm der mit dem Murmeltier tanzt? *duck*

Gruß
Bitte warten ..
Mitglied: bastla
26.01.2011, aktualisiert 18.10.2012
@T-Mo
Soferne die Antwort auf meine obige Frage "ja" ist und der Name als Kriterium dienen soll, wird's etwas knifflig (und das war der für mich interessante Teil ) ...

... ansonsten hast du allerdings recht mit Deinem Vorschlag (dem ich noch, für den Fall dass doch nicht anhand des Dateinamens gelöscht werden soll, einen Tipp sowie den ergänzenden Hinweis auf "WasFile 2.2" - gleichfalls auf der verlinkten Seite zu finden - hinzufüge).

Grüße
bastla
Bitte warten ..
Mitglied: 52106
26.01.2011 um 14:59 Uhr
Also, ich schildere euch mein Problem mal Detail. Ich habe zwei Buffalo NAS GEräte im Einsatz. NAS1 macht um 20.00 auf NAS2 ein Backup über die integrierte Backup funktion der Linux Distri, welche auf den NAS-Station installiert ist. Wenn ich mir nun die BAckup Freigabe als Netzlaufwerk in meinem Windows PC mappe, dann ist der TimeStamp der autom. angelegten Backup Ordner (Format: jjjjttmmstdstdminmin) nicht aktuell sondern er steht bei jedem Ordner "geändert am 11.08.2009". Buffalo Support kann mir auch keinen Lösung nenne, da es meiner Meinung nach an der Inkompatibälität Linux-Windows liegt.
Ich habe es zuvor schon mit delage32 etc. probier, was aber aufgrund des falschen Timestamp nicht funktioniert.

Nun brauche ich ein Script/.bat Datei um eine Vernünftige Lösung und ein autom. Löschen durchführen zu können.
Ich frage auch nur, da ich der Anwendungsentwicklung nicht so mächtig bin und ich mir selber mit zusammen gebastelten Lösungen nicht mehr helfen kann. Brauche dies aber dringend für 3 Standorte.
Vielen dank im Voraus.
Bitte warten ..
Mitglied: 60730
26.01.2011 um 15:19 Uhr
Zitat von 52106:
Also, ich schildere euch mein Problem mal Detail.iert?

  • wenn du jeden Tag einen neuen Ordner anlegst und du willst nur die Ordner (Bäckubz) der letzten 14 Tage behalten, dann wäre es doch logisch, alle Ordner - bis auf die 14 letzten in den Orkus zu kicken.
(Wobei sich da schon meine Nackenhaare sträuben, Bäckubz auf Büffaloh und dann alles älter als 14 Tage in den Orkus jagen - das ist ja Beihilfe)

Brauche dies aber dringend für 3 Standorte.

Nee sorry - aber das trinkende Reizwort in Verbindung mit so einer (Bastla möge mir verzeihen) Banalfrage "skip=14" - da tick ich aus .-(

Warum denken so viele eigentlich - wenn schon nicht richtig, dann per Batch und am besten schnell von anderen bauen lassen, weil man brauchst ja dringend für 3 Standorte oder 1000 Rechner...
Mit Batch kan man selber so schöne Sachen machen, aber diese Würgarounds da mach ich nicht mit
Bitte warten ..
Mitglied: bastla
26.01.2011 um 16:01 Uhr
Hallo SBong1!

Das folgende VBScript simuliert den Löschvorgang nur - zumindest, solange der Löschbefehl in Zeile 13 durch das davor gestellte Kommentarzeichen ' deaktiviert ist:
01.
Basis = "D:\Backup" 
02.
Alter = 14 
03.
 
04.
Behalten = "#" 
05.
For i = Date To Date - Alter Step -1 
06.
    Behalten = Behalten & Year(i) & Right("0" & Day(i), 2) & Right("0" & Month(i), 2) & "#" 
07.
Next 
08.
Entfernen = "Gelöscht würden:" & vbCrLf 
09.
Set fso = CreateObject("Scripting.FileSystemObject") 
10.
For Each Folder In fso.GetFolder(Basis).SubFolders 
11.
    If Instr(Behalten, "#" & Left(Folder.Name, 8) & "#") = 0 Then 
12.
        Entfernen = Entfernen & vbCrLf & Folder.Path 
13.
        'Folder.Delete 
14.
    End If 
15.
Next 
16.
WScript.Echo Entfernen
Die Zeilen 8, 12 und 16 sind im "Ernstfall" nicht erforderlich.

Kurz zum Ablauf: Da eine gewöhnliche Sortierung (wegen der umgekehrten Reihenfolge von Tag und Monat) nicht zielführend ist, wird in den Zeilen 5 bis 7 eine "Whitelist" (lässt sich mit einem zusätzlichen
WScript.Echo Behalten
nach Zeile 7 auch anzeigen) für die nicht zu löschenden Datumswerte (in der Schreibweise "jjjjttmm", wobei als Begrenzung jeweils ein "#" vor und nach dem Datum steht) erzeugt - jeder Ordner, dessen erste 8 Zeichen des Namens nicht einem Listeneintrag entsprechen, wird gelöscht (siehe Zeile 11).

Grüße
bastla

P.S.: @T-Mo
Ich verzeihe umstandslos , allerdings: Ein "skip=14" setzt eine passende Sortierung voraus ...
Bitte warten ..
Mitglied: 52106
26.01.2011 um 16:04 Uhr
Sehr gut TimoBeil,

du scheinst meine Frage ja kompl. verstanden zu haben. Ich werde es mal in einem anderen Forum probieren.
Nur zur Info: Der Timestamp des NTFS Dateisystems wird nicht aktuell angezeigt, so dass ich mir leider mit einem Script, was alles älter als oder wie du es schreibst:
"wenn du jeden Tag einen neuen Ordner anlegst und du willst nur die Ordner (Bäckubz) der letzten 14 Tage behalten, dann wäre es doch logisch, alle Ordner - bis auf die 14 letzten in den Orkus zu kicken." nicht helfen kann.

Zudem weis ich nicht was an einem Backup von NAS zu NAS, die auch noch in unterschiedlichen Brandabschnitten stehen, jeweils mit einem RAID1 konfiguriert sind und eine versionierte Sicherung anlegen, falsch ist, aber du scheinst es ja zu wissen.
Respekt!!!
Bitte warten ..
Mitglied: 52106
26.01.2011 um 16:42 Uhr
Danke an \"bastla\" du hattest mit dem Format recht. Monat muss vor Tag. Habe alles angepasst und getestet. hat super funktioniert. Danke schön.
Bitte warten ..
Mitglied: 60730
26.01.2011 um 17:42 Uhr
Moin,
Zitat von 52106:
Sehr gut TimoBeil,

du scheinst meine Frage ja kompl. verstanden zu haben. Ich werde es mal in einem anderen Forum probieren.
Zum ersteren Ja habe ich - soweit man eine Frage, die in eine Zeile gepresst wurde - als Aussenstehender verstehen kann.
Zum zweiten: Solche "Erpressungsversuche" mag ich ja noch weniger, als das Wort Dringend.

Nur zur Info: Der Timestamp des NTFS Dateisystems wird nicht aktuell angezeigt, so dass ich mir leider mit einem Script, was
alles älter als oder wie du es schreibst:
Und da sehe ich den Unterschied zwischen diesem Forum und jenen Foren, wo man Haischecklogs postet.

Nix gegen Bastla und seine Lösung, aber das ist Works as Designed und ich behaupte, die Designvorgabe ist bescheiden.
Ich rsynce auch zwischen NASsen und da stimmt das Dateidatum - ob es an Buffalo oder an deinem Script oder an dem fehlenden NTP Server liegt - ich weiß es nicht und will es auch nicht wissen.

Denk mal drüber nach und wenn Bastlas Lösung deinen Ansprüchen genügt - bitte einen grünen Haken drankleben und mal ne Nacht über das Design schlafen.

Gruß
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Fileserver Daten älter als 14 Tage löschen!
Frage von michi-ffmBatch & Shell11 Kommentare

Hallo Zusammen, hat jemand evtl einen Lösungsvorschlag für mein Projekt? Ich bin dabei einen Fileserver aufzusetzen und möchte nun ...

Batch & Shell
14 Tage alte Dateien automatisch löschen - Shell
Frage von trallerBatch & Shell1 Kommentar

Hallo, ich möchte ein Shell-Script (Ubuntu 16.01) haben, welches in einem Verzeichnis /der/pfad alle Dateien löscht, die älter als ...

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 ...

Linux Tools
Per Skript alle Mails älter als 14 Tage von IMAP-Server löschen
gelöst Frage von BirdyBLinux Tools4 Kommentare

Hallo zusammen, im Moment stehe ich total auf dem Schlauch, denn ich habe die Aufgabe automatisiert alle Mails die ...

Neue Wissensbeiträge
Microsoft

Update KB4073578 für AMD CPU (Spectre und Meltdown Lücke)

Information von sabines vor 1 StundeMicrosoft

Wegen Problemen (BOSD, nicht startende PCs) wurde das Update KB4056897 und KB4056894 für AMD CPUs zurückgezogen. Dieses Update KB4073578 ...

Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 14 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 21 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 22 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1018 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...