Dateien verschieben in Datumsordner

Mitglied: zero5liters

zero5liters (Level 1) - Jetzt verbinden

21.09.2011, aktualisiert 13:36 Uhr, 4310 Aufrufe, 14 Kommentare

Hallo, ich versuche eine mir vorgegebene Sicherungslösung zu verbessern/verschönenern.

Ich habe einen Server auf dem werden täglich Daten von mehreren Geräten gesichert. Zu meinem Leidwesen sicherheitshalber die Daten der letzten 3 Tage. Diese werden in einen Tagesscontainer geschrieben. Leider nur nicht in den jeweils zugehörigen Ordner, sondern in den Tagescontainer/Ordner von dem Tag an dem die Sicherung läuft.

Beispiel:

Ordner1 von heute 21.09.2011 darin enthalten sind die Dateien "Ordner1_Sicherung_19092011",""Ordner1_Sicherung_20092011","Ordner1_Sicherung_21092011"

Hier mal die Ordnerstruktur:

Workstation1-n
-Jahr
-Monat
-Tag
-Ordner1
-Datei1(Dateiname beginnt immer genauso wie der Ordnername)
-Ordner2
-Datei2
-Ordner_n
-Datei_n

An der Sicherung kann ich leider nicht drehen, die kommt von extern. Derzeit lösche ich die Dateien die nicht in den Ordner gehören von Hand raus und zippe den Tagescontainer. Aber das müsste man doch mit einer Batch lösen können. Ich habe eine ungefähre Vorstellung (Batchlaie) wie ich das für einen Tagescontainer lösen könnte. Aber mir fehlt jegliche Vorstellungskraft wie ich das aus der root machen müsste.

Vielleicht hat ja jemand eine Idee. Wäre echt cool wenn ich mir die Arbeit (täglich von Hand lsöchen/verschieben) sparen könnte.

Mfg
zero


So hier dann mal ein Bild der Ordnerstruktur
fd9fa7f607250b72d9c9e27a5fa4623a - Klicke auf das Bild, um es zu vergrößern
damit es ein wenig einleuchtender ist. Bin leider ne 0 im Erklären.
Die Dateien die im Ordner "Anwendung1" liegen sollen nach Möglichkeit nach Datum in die jeweils passenden Tagesordner wegsortiert (move & overwrite) oder gelöscht werden.
Also die Datei "Anwendung1_*" vom 19.09. (anhand des Änderungsdatums) soll in den Ordner Workstation\Jahr\Monat\Tag (Workstation1\2011\09\19\Anwendungs1) verschoben werden.
Der Ordner "Backup" stellt die Freigabe dar ...

Hoffe damit könnt ihr mehr anfangen.

thx in advance
Mitglied: pieh-ejdsch
21.09.2011 um 12:31 Uhr
moin zero,

also nach dem drittenmal Durchlesen ...
soll nun was genau geschehen?

alles was nicht mit "Odner_Sicherung_DatumNichtvonHeute" endet soll gelöscht werden?
Ja ich wart dann mal vorher auf Food aeähm Feedback.

Gruß Phil
Bitte warten ..
Mitglied: Skyemugen
21.09.2011 um 12:35 Uhr
Aloha Phil,

ich habe es eher so verstanden, dass er Sicherungsordner von einigen Geräten hat (allerdings kP wo die genau liegen)

z.B. Ordner1, Ordner 2 etc.

Und dort liegen gesicherte Dateien der letzten drei Tage.

Diese sollen dann, je nach Datum entsprechend, in ihre jeweiligen Ordner geschoben werden, denke ich.

Also Ordner1\Ordner1_Sicherung_19092011.xyz soll zu Workstation1-n\2011\09\19\Ordner1\Ordner1_Sicherung_19092011.xyz etc. pp.

nunja, erstmal Mahlzeit

greetz André
... wobei, beim vierten Mal durchlesen, bin ich mir doch unsicher, ob die Ordnerstruktur nicht doch die gesicherten Daten enthält, wobei ich dann nicht weiß, was er will ;-) face-wink
Bitte warten ..
Mitglied: zero5liters
21.09.2011 um 13:28 Uhr
Zum Bild: also es fehlen natürlich weitere Monate, Tage, Workstations und Anwendungen das ist nur um mal die Struktur aufzuzeigen ;-) face-wink
Bitte warten ..
Mitglied: Skyemugen
21.09.2011 um 13:50 Uhr
Aloha,

ja was denn nun:

Die Dateien die im Ordner "Anwendung1" liegen sollen nach Möglichkeit nach Datum in die jeweils passenden Tagesordner wegsortiert (move & overwrite) oder gelöscht werden

entscheide dich bitte, wenn die nicht-von-heute-Dateien unwichtig sind, fliegen sie raus, bumm! Ist nämlich auch das Einfachste und könnte z.B. so ablaufen:
Ausgehend davon, dass das Skript heute mit dem Datum von heute und vorhandenen Dateien von heute arbeitet (dass ich mit heute nicht unbedingt den 21.September 2011 meine, dürfte klar sein *gg*)
das echo in Zeile 04 dient der Voransicht, wenn du es entfernst, geht der Code knallhart zur Sache ;-) face-wink

greetz André
edit:
Also die Datei "Anwendung1_*" vom 19.09. (anhand des Änderungsdatums) soll in den Ordner Workstation\Jahr\Monat\Tag (Workstation1\2011\09\19\Anwendungs1) verschoben werden.

Entscheide dich!
Bitte warten ..
Mitglied: pieh-ejdsch
21.09.2011 um 13:51 Uhr
aus dem Bauch raus würde ich sagen die Backups der zwei anderen Dateien im Ordner können gelöscht werden, da diese ja in einem anderen DatumsOrdner enthalten sind.

Ungetestet! Bitte Testdaten Verwenden. etwa so

Gruß Phil
Bitte warten ..
Mitglied: zero5liters
21.09.2011 um 14:18 Uhr
Hi - danke schon mal. Das mit dem Verschieben/Löschen ist so ne Sache. Denn eigentlich wäre löschen schon ok. ABER: derzeit wenn ich das händisch machen muss und mal nicht aufpasse und mir der Speicher voll läuft dann schreibt er eben keine Daten mehr in den Ordner. Räume ich dann wieder auf und schaffe Platz. Bekomme ich vom Server die Sicherungen der letzten Tage und verschiebe die dann einfach in die passenden Tage.
Wobei ja wenn die Batch so arbeitet wie sie soll läuft mir ja auch nicht mehr der Speicher voll. ;-) face-wink Also können wir getrost bei löschen bleiben. ;-) face-wink

Noch ne blöde Frage zum Schluss. Wie müsste ich denn den Code bearbeiten das ich das ganze aus der "root" starten kann. Denn die Workstations stehen natürlich mit Ihren echten PC-Namen da und heißen nicht einfach 1-2-3 sondern haben ihrer Funktion nach eigene Namen. Genauso wie die Anwendungen/Anwendungsordner. :-( face-sad
Bitte warten ..
Mitglied: pieh-ejdsch
21.09.2011 um 14:38 Uhr
zum schluss antworten wir immer nur blöd wenns blöde Fragen gibt. ;-) face-wink
Ne zum schluss sagen wir tschü.

beim Script von André trägst Du bei Pfad nur K:\Backup ein
ach ne geht ja nicht da muss eine Unteroutine rein oder eine extra Vor-Forschleife gebastelt werden.
wenn Du das jeden tag startest nimmste dieses Script

für den Anfang um wirklich alle Doppelten Daten zu löschen nimmste das von mir.

Gruß Phil
Bitte warten ..
Mitglied: zero5liters
21.09.2011 um 15:10 Uhr
Ja cool - danke geht 1A. Herzlichen Dank.
Zu André´s Script hab ich noch ne Frage. Was bedeuten die "Parameter" dieser Zeile?:

"for /f "delims=" %%s in ('dir /B /S /A-D "%Pfad%"^|findstr /V %Datum%') do echo del "%%s" "

Will ja nicht nur copy/pasten - würds ja gern auch verstehen.

thx
Bitte warten ..
Mitglied: Skyemugen
21.09.2011 um 15:23 Uhr
Aloha,

es war einmal eine Schleife, die durfte nichts trennen, dafür aber in der Suche-nach-Dateien-in-allen-Unterordnern-von-%Pfad%-aus die Funde mit dem %Datum% rauswerfen und nur die restlichen Treffer ausgeben (und ggf. löschen, wenn man denn so wollte)
for /?
dir /?
findstr /?

greetz André
Bitte warten ..
Mitglied: zero5liters
21.09.2011 um 15:48 Uhr
ok - habe mal brain.exe neugestartet und schon ist das Verständnis gleich größer.

Wenn ich das jetzt richtig verstehe löschts die Dateien die im Dateinamen ungleich des Ordner-Datums sind - oder?
Bitte warten ..
Mitglied: Skyemugen
21.09.2011 um 15:55 Uhr
Aloha,

rein technisch gesehen, löscht er die Daten, deren Dateinamenbestandteil ungleich dem aktuellen Datum ist (was natürlich auch der Ordnerstruktur an dem Tag entspricht) ;-) face-wink

greetz André
Bitte warten ..
Mitglied: zero5liters
21.09.2011 um 16:03 Uhr
Könntest Du mir bitte noch nen Tip geben wie ich es statt auf den Dateinamen auf das Änderungsdatum jagen kann.
Bitte warten ..
Mitglied: Skyemugen
21.09.2011 um 16:21 Uhr
Aloha,


du meinst so?

greetz André

zur Erklärung:

für jede gefundene Datei wird das Änderungsdatum per echo ausgeben und dann wie gehabt per findstr gefiltert und nur der passende Treffer wird dann auch (sofern man will) gelöscht
Bitte warten ..
Mitglied: zero5liters
22.09.2011 um 09:57 Uhr
Super - danke. Das hilft mir deutlich weiter - als meine möchtegern Batches. ;-) face-wink
Bitte warten ..
Heiß diskutierte Inhalte
Off Topic
Aqui - Wir möchten den Hasen zurück
NixVerstehenVor 21 StundenAllgemeinOff Topic34 Kommentare

Lieber aqui, ich finde es sehr sehr schade, das du dich hier so überraschend abgemeldet hast. Ich habe auch von dir sehr viel gelernt ...

Netzwerke
Erfahrungen mit HPE Aruba Switches (Aruba OS)
sixofeightVor 1 TagAllgemeinNetzwerke13 Kommentare

Holla zusammen, Wer von euch setzt Aruba Switches (Aruba OS, ehemals HP ProCurve) ein und wie sind eure Erfahrungen bzw. wie zufrieden seid ihr ...

Webentwicklung
Webdesigner ist verschwunden
Janno100Vor 1 TagFrageWebentwicklung4 Kommentare

Hallo zusammen Kunde hat einen Webdesigner der die Domain des Kunden vor einigen Jahren einfach unter seinen eigenen Name weiter geführt hat. Diese haben ...

Exchange Server
Exchange weist Mails ohne Log Eintrag ab
Mr.RobotVor 12 StundenFrageExchange Server16 Kommentare

Guten Morgen, wir haben seit letzter Woche ein ganz spannendes "Problem" oder sollte ich eher Phänomen sagen? Wir haben eine Tochtergesellschaft die allerdings IT-Technisch ...

Windows Server
Server clonen
oGutITVor 1 TagFrageWindows Server5 Kommentare

Hallo ich habe einen alten HP Server Gen8 und möchte diese auf einen HP Microserver Gen8 klonen. Auf dem HP Server ist 2W12KR2 am ...

Windows 10
Was ist zu wenig
ukulele-7Vor 7 StundenFrageWindows 1013 Kommentare

Hallo, ich suche nach einer Quelle um Windows 10 Pro OEM Lizenzen zu beziehen, gerne auch erstmal ein paar als Testkauf. Nun ist das ...

Netzwerke
2 fritzen mit unterschiedlichen subnetzen einrichten
gelöst alpi972Vor 1 TagFrageNetzwerke7 Kommentare

Hallo, hoffe ich habs unters richtige thema gesetzt, ich habe 2 fritzboxen (eine 7490 als DSL Modem und eine 7430 als Brige), und will ...

Router & Routing
Windows Netzwerklaufwerke durch kaskadiertes Netzwerk nicht ansprechbar
TomAustriaVor 1 TagFrageRouter & Routing5 Kommentare

Hallo, wir hatten bisher nur ein "einfaches" Netzwerk und möchten dieses nun in getrennte Netzwerksegmente aufteilen: Das Netz 192.168.2.x haben wir beim AX1500 an ...