Move - Dateien verschieben

Einleitung

Auf einigen Systemen werden ständig Dateien erzeugt - Logdateien. Diese Daten werden dann eigentlich nicht weiter verarbeitet. Es wäre jedoch hilfreich, wenn diese Dateien eine bestimmte Zeit lang gespeichert bleiben, um eine Analyse durchführen zu können.

Da bekannt ist, dass Windows bei stark gefüllten Verzeichnissen (mehr als 10000 Dateien) oder großen Dateien (mehr als 1 Megabyte) immer langsamer wird, kann das Move-Programm hier helfen die Performance und die Übersicht zu erhalten. Dabei werden nicht einfach die Dateien verschoben, so wie es das Windows-eigene Programm vorführt, sondern nach dem Alter der Datei - einem definierbaren Zeitabstand zwischen aktueller Uhrzeit und dem Dateidatum - oder, wenn eine Datei eine bestimmte Größe überschritten hat.

Der Zielordnername erhält das Format YYYYMM\YYYYMMDD , das Tagesunterver- zeichnis kann abgeschaltet werden. Dateien mit gleichem Namen erhalten eine laufende Nummer.



Kein Windows-Dienst, aber Dienst-typisch

Das vorliegende Move-Programm ist nicht als Windows- Dienst konzipiert, um den Speicher eines Servers nicht ständig mit einem Overhead an Daten zu belasten. Mit dem Windows-Task-Planer können Sie bequem die Aufrufe für den Start des Move-Programms selbst ein- stellen.

Kurzer Hinweis: Ein eigener Task-Planer als Windows-Dienst ist zur Zeit in der Betaphase.

Der Rechenaufwand beim Einlesen der ini-Datei ist nicht wahrnehmbar. Ebenso das Erstellen von Unterverzeichnissen und das Verschieben von Dateien auf der selben Partition. Beim Verschieben von großen Dateien auf andere Partitionen oder sogar andere Server innerhalb eines Netzwerks ist die Performance des Windows- Explorers vergleichbar.

Nach einem definierbaren Zeitabstand (Jahre, Monate, Tage, Stunden oder Minuten) löscht das Move-Programm endgültig die archivierten Dateien oder wandelt die Zielordner in zip-Dateien um.

Um auch im abgemeldeten Zustand ungehindert laufen zu können, besitzt das Move-Programm keine eigene Fenster. Für Meldungen wird eine log-Datei geschrieben.




 

Steuerungszentrale ini-Datei

Die Konfiguration der einzelnen Tasks erfolgt in der zugehörigen ini-Datei.
Erforderliche Programmversion: 1.0.0.71

[General]
Continuity=01.01.2008
ContinuityMax=72

[Task]
Taskname1
Taskname2

[Taskname1]
dir=c:\temp
dura=2 Tage
over=sizecheck
last=

[Taskname2]
dir=C:\*.zip
todir=C:\temp\Archiv-C
dura=2 Monate
zip=2 Wochen
del=6 Monate
over=sizecheck
daydir=0
last=



Parameter

[General]
; Continuity ist ein Pflichtparameter und muss ein gültiges Datum enthalten.
; Hier schreibt das Move-Programm den Zeitpunkt des letzten Programmstarts.
; Es ist eine Sicherung eingebaut, die verhindert, dass mit einem manipulierten Rechnerdatum zuviele Dateien verschoben werden.
; Das Programm sollte innerhalb von 24 Stunden das letzte Mal gelaufen sein.
; ContinuityMax=x; Sind längere Pausen möglich, ist eine entsprechende Stundenanzahl anzugeben.
; ContinuityMax-Default: 24

[Task]
; Ein Taskname kann beliebig gewählt werden.
; Für jeden Tasknamen ist ein zugehöriger Abschnittname mit Parameter anzugeben.
; Es muss sichergestellt sein, dass ein Name eindeutig ist.

[Taskname]
; dir ist ein Pflichtparameter. Ohne Dateispezifikation gilt *.* (alle Dateien) !
; dura gibt das max. Alter der Dateien an. Ältere Dateien werden verschoben.
; dura-Default: 24 Stunden (wenn der Parameter fehlt)
; Die Zeitdauerangabe ist in Jahren, Quartalen, Monaten, Wochen, Tagen, Stunden (Defaultangabe) oder Minuten möglich. Z.B.: dura=3 Wochen
; size gibt die max. Größe einer Datei an
; size-Default: 0
; Die Größenangabe ist in GB, MB, KB oder Byte (Defaultangabe) möglich. Beispiel: 3 MB
; over schaltet die Größenprüfung mit sizecheck ab, agecheck die Altersprüfung.
; over-Default: null
; dura=0 und size=0 und over=null ist nicht zulässig (keine Aktion möglich)
; last wird vom Programm mit dem letzten Fundzeitpunkt beschrieben.

; todir definiert den Zielordner, wohin die Dateien verschoben werden.
; toDir-Default: der dir-Ordner (wenn toDir nicht angegeben ist).
; zip gibt die Zeitdauer an, ab wann die archivierten Dateien gezippt werden.
; Für zip wird im Move-Programmordner das Programm PKZIP25.EXE erwartet.
; zip-Default: 3 Jahre
; Die Zeitdauerangabe ist in Jahren, Quartalen, Monaten, Wochen, Tagen, Stunden (Defaultangabe) oder Minuten möglich. Z.B.: dura=3 Wochen
; del definiert den Zeitpunkt, ab wann Dateien zu löschen sind
; del-Default: 1 Jahr
; daydir=0 erzeugt kein Tagesverzeichnis YYYYMMDD. Zielordner ist dann das Monatsverzeichnis YYYYMM. Sind Dateinamen gleich, erfolgt automatisch die Nummerierung im Dateinamen.
; daydir-Default: 1



Erster Programmstart

Es ist sehr wahrscheinlich, dass beim ersten Programmstart nur eine Warnung in der log-Datei erscheint:

Warning|Der letzte Aufruf ist zu lange her. Eventuell wurde das Rechnerdatum manipuliert. Das Programm wird aus Datenschutzgründen nicht fortgesetzt.

In der ini-Datei wird der jeweils letzte Programmstart festgehalten (Continuity = Datum). Das Programm geht jedoch davon aus, dass es jeden Tag mindestens einmal läuft. Daher beträgt in der Regel der Unterschied zwischen der aktuellen Rechnerzeit und dem letzten Programmstart höchstens 24 Stunden. Stellt das Programm nun eine größere Differenz fest, könnten Dateien unbeabsichtigt verloren gehen. Um dem Dateiverlust vorzubeugen, schaltet das Programm der Sicherheit halber vorzeitig ab und hinterlässt die o.g. Warnung. Sie dürfen selbstverständlich den Continuity-Parameter manuell anpassen, wenn Sie sicher sind, dass das Rechnerdatum korrekt eingestellt ist.

Wird ein Computer mehrere Tage nicht eingeschaltet, entstehen diese Lücken zwangsläufig. Dem Programm können Sie dann über den Parameter ContinuityMax = 72 im Abschnitt [General] einen höheren Toleranzwert mitgeben. Zum Beispiel sind dies bei der Angabe 72 = 3 Tage. Andere Werte sind möglich. Der Parameter interpretiert den definierten Zahlenwert immer als Stundenangabe. Default: 24



MoveDemo

Um das Programm Move.exe sofort testen zu können, enthält die zip-Datei im Download-Bereich ab dem 28.01.2008 das zusätzliche Programm MoveDemo.exe

Mit einem Doppelklick auf das Programm MoveDemo.exe werden automatisch 1000 tmp-Dateien im Unterverzeichnis MoveDemo und eine Move.ini-Datei erzeugt.

Hinweis: Für den regulären Betrieb der Move.exe ist die MoveDemo.exe nicht notwendig!









log-Eintrag nach dem ersten Programmstart

Die Anzeige in der log-Datei zeigt 995 verschobene Dateien an.

28.01.2008 22:18:21|APP|Move|1.0.71|F:\Test|F:\Test\Move.log
28.01.2008 22:18:28|mov| 995|F:\Test\MoveDemo^Datei 00293.tmp^...
28.01.2008 22:18:28|Info|^mov^995





log-Eintrag nach dem zweiten Programmstart

Die Anzeige in der log-Datei zeigt 335 gelöschte Verzeichnisse samt Inhalt an.

28.01.2008 22:23:34|APP|Move|1.0.71|F:\Test|F:\Test\Move.log
28.01.2008 22:23:41|deldir| 3|F:\Test\MoveDemo\200701^20070129^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200701
28.01.2008 22:23:41|deldir| 26|F:\Test\MoveDemo\200702^20070201^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200702
28.01.2008 22:23:41|deldir| 29|F:\Test\MoveDemo\200703^20070301^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200703
28.01.2008 22:23:41|deldir| 29|F:\Test\MoveDemo\200704^20070401^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200704
28.01.2008 22:23:41|deldir| 28|F:\Test\MoveDemo\200705^20070501^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200705
28.01.2008 22:23:41|deldir| 29|F:\Test\MoveDemo\200706^20070601^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200706
28.01.2008 22:23:41|deldir| 29|F:\Test\MoveDemo\200707^20070701^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200707
28.01.2008 22:23:41|deldir| 28|F:\Test\MoveDemo\200708^20070801^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200708
28.01.2008 22:23:41|deldir| 27|F:\Test\MoveDemo\200709^20070901^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200709
28.01.2008 22:23:41|deldir| 29|F:\Test\MoveDemo\200710^20071001^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200710
28.01.2008 22:23:41|deldir| 26|F:\Test\MoveDemo\200711^20071103^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200711
28.01.2008 22:23:41|deldir| 28|F:\Test\MoveDemo\200712^20071201^...
28.01.2008 22:23:41|deldir| 1|F:\Test\MoveDemo^200712
28.01.2008 22:23:41|deldir| 12|F:\Test\MoveDemo\200801^20080101^...
28.01.2008 22:23:41|Info|^deldir^335



RenW2d - web to date umbenennen
m3u-Playlists