PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Intelligentes "move" Programm unter XP ?



Newbie314
19.01.11, 15:53
Hi !

Was ich demnächst tun muss: alle Dateien die älter als XXX sind von Netzlaufwerk A auf Netzlaufwerk B "moven".

Die Verzeichnisstruktur muss dabei erhalten bleiben.

Unter XP.

Das einzige Programm das ich bisher gefunden habe das ganz einfach einen Move .. älter als .. auf diese Weise zu können scheint ist Copy Handler.

Bei TeraCopy gefällt mir dass er bei einem Move eine Prüfsumme prüft bevor er das Original löscht, aber TeraCopy kann offensichtlich nicht diese Dateialter Bedingung.


Kennt jemand von Euch noch ein Tool das das kann ? Kann auch Bezahlware sein... wenn es gut und zuverlässig ist...

Richtig klasse wäre, wenn es auch die Möglichkeit böte, bestimmte Verzeichnisse vom Move auszunehmen.

Dodobo.reloaded
19.01.11, 16:15
Live Linux CD booten, man find und man rysnc ansehen und beides mit find-Option -exec kombinieren. Dann hast du alles, auch den Integritätscheck. Und musst dich mit den Ärgernissen unter Win, die du gerade hast, nicht rumärgern (kann nix/ kann nur die Hälfte/ muss erst besorgt werden/ lässt sich nicht mit anderen Funktionen kombinieren/ unsicher, ob es klappt/ GUIs erlernen...).

Bestimmt bastelt dir jemand hier den Einzeiler zusammen. Hinweis: find kennt mehrere Zeitarten, auf NTFS vermutlich ein paar weniger. ;)

Alternativ ein Puppy im Qemu unter Win, das nutzt du ja so gern. ;)

Edit (2): Hier steht auch noch was: https://www.administrator.de/index.php?content=32727

Cygwin geht natürlich auch, aber ich googlete nach find linux windows, da ich meine, zumindest rsync gäbe es wohl nativ für Win. ;)

Edit 3:

Wenn sich keiner meldet, bastel ich dir das morgen oder heute abend zusammen, der Zeit halber aber dann einfach mit find und mv - den Integritätscheck könnte man/ ich noch mit m5sum bzw. cp/m5dsum/rm einbauen. Aber dann wird es schon wieder aufwendiger und gefährlicher. ;) Dauert eigentlich keine 15 min, der find-Befehl mit exec 1 min zum Tippen, aber es geht hier um wichtige Daten und es soll sich lieber einer melden, der das ganz schnell bzw. ganz zuverlässig zusammengezimmert hat, ohne erst ewig Manpages angucken und testen zu müssen, weil er es sowieso schon kann. Ist schon genug Zeit draufgegangen die Tage.

Newbie314
19.01.11, 16:23
Jobrechner => Nix mit Linux.

Wenn ich etwas mehr Zeit hätte würde ich mir etwas mit den Findutils und Perl zusammenstricken... die Frage war nur ob es etwas Fertiges gibt.

Wenn nicht mache ich mit Copy Handler erst eine Sicherheitskopie auf eine große Platte und dann den "Move"... wird dann schon klappen....

Dodobo.reloaded
19.01.11, 16:28
Jobrechner => Nix mit Linux.
Sagt wer? Schau meine Edits an oder lern die Windows Powershell. ;)

TomTobin
19.01.11, 19:28
Hi,

das Tool der Wahl heißt da bei Windows XP robocopy und kann gut mit rsync mithalten.

http://www.wintotal.de/artikel/artikel-2007/91.html (http://http://www.wintotal.de/artikel/artikel-2007/91.html)

Gruß

Tom

Wene
19.01.11, 19:50
Wenn es sich nicht um all zu viele Daten handelt:

Alles kopieren
Am Ziel mittels Windows-Suche die Daten "neuer als" suchen und löschen
In der Quelle alle "älter als" suchen und löschen

:D

Ist dies eine einmalige Aktion oder soll das regelmässig passieren?

Newbie314
19.01.11, 20:33
Ich fürchte das werde ich ca. 1x pro Jahr machen.

Mein Plan:

1. Ca 2 wochen vorher mit den Findutils die Liste der Dateien die "fällig" sind erstellen und per Rundmail an die Kollegen (war ein Erfolg. Gestern getan, heute schon standen drei Kollegen da bei denen ich die alten Daten nicht verschieben sollte.)

2. Einen Tag vor dem Stichtag: alle Daten älter als (so dass sie auf der Liste vor zwei Wochen auftauchen) per CopyHandler auf die lokale Riesenplatte eines Kollegen. Außer diesem Kollegen und dem Chef weiß keiner dass ich diese Sicherheitsmaßnahme ergriffen habe damit nicht alle möglichen Leute bei ihm auf der Matte stehen (das war die Bedingung für seinen Plattenplatz ).

3. Stichtag: mit CopyHandler alle Dateien älter als.... auf neue Platte "moven".

Frage war nur ob das eleganter ginge.

"Robocopy" wurde mir auch empfohlen, kann aber laut Internet nicht die Bedingung "alle Dateien älter als..." und von Checksummenprüfung steht dort auch nichts drin. Ich will eben kein Backup-Programm das evtl. noch Dateien von dem einen Laufwerk auf das alte zurücksynchronisiert. Sync- oder Backupprogramme gibt es wie Sand am Meer, das was ich suche anscheinend bisher gar nicht...

naraesk
19.01.11, 20:36
Und was ist mit der angesprochenen Windows-Powershell, steht dir die zur Verfügung?
Dann wäre das ja möglicherweise etwas: http://windows-powershell-scripts.blogspot.com/2009/08/unix-linux-find-equivalent-in.html

TomTobin
19.01.11, 21:04
"Robocopy" wurde mir auch empfohlen, kann aber laut Internet nicht die Bedingung "alle Dateien älter als..." und von Checksummenprüfung steht dort auch nichts drin.
Klar kann es "älter als" - wäre ja noch schöner :rolleyes:
Der Schalter muss nur im richtigen Kontext verwendet werden:
/MINAGE:n .... exclude files newer than n days/date

Und was die Prüfsumme angeht. Es gibt Dir zwar keine sichtbar an der Konsole aus aber bei einem /MOVE kannst Du Dir sicher sein, das erst nach einer vollständigen fehlerfreien Übertragung gelöscht wird. In der Beziehung ist das Teil robust wie ein Panzer :D



Ich will eben kein Backup-Programm das evtl. noch Dateien von dem einen Laufwerk auf das alte zurücksynchronisiert. Was meinst Du jetzt damit?

Gruß

Tom

Newbie314
19.01.11, 22:13
@Nasaresk: ich habe mir die Findutils installiert, damit habe ich ein original Gnu Find zur Verfügung.. ist mir noch lieber als die Power Shell die ich erst installieren lassen müsste.

@TomTobin: danke, wenn Robocopy auch "not newer than" sowie eine sichere "Move" Funktion hat kann es genau das was ich benötige.. somit werde ich unseren IT Service bitten es mir zu installieren (wir haben keine Superuser Rechte auf den Kisten... haben wohl zu viele 'rumgespielt....).

"Zurücksynchronisieren": Die Synchronisierprogramme halten zwei Verzeichnisbäume synchron. Das will ich nicht. Backup Programme können einen Verzeichnisbaum wiederherstellen.. das will ich auch nicht... das meinte ich.. ich will nur "alte" Dateien sicher auf ein anderes Laufwerk "moven".... werde Robocopy ausprobieren und mich dann wieder melden...

TomTobin
19.01.11, 22:47
robocopy C:\Quelle\ Z:\Ziel\ /MOVE /MINAGE:365 /R:3 /W:5 /TEE /LOG:c:\logfile.txt
moved alle Dateien/Verzeichnisse die älter als ein Jahr sind aus C:\Quelle\ und verschiebt sie nach Z:\Ziel\ (Shares \\Servername\Freigabe sind natürlich auch möglich)

/R:n es werden n-Versuche eine Datei zu kopieren unternommen. Dieser Schalter sollte angegeben werden da default 1 Million ist. Sollte eine Datei sich nicht kopieren/moven lassen, wird's sonst ein wenig lang :rolleyes:

/W:n nach einem fehlerhaften Copy/Move Versuch wird n-Sekunden gewartet. Z.B. damit man die (offene)Datei schließen/speichern kann.

/LOG:Filename schreibt ein Logfile mit.

/TEE gibt den Vorgang auch an der Konsole aus (nur nötig in Verbindung mit /LOG)

Eine vollständige Hilfe gibt robocopy /??? aus


ich unseren IT Service bitten es mir zu installieren robocopy.exe ist nur eine EXE, muss also nicht installiert werden. Den IT-Service solltest Du trotzdem informieren ;)

Gruß

Tom

Newbie314
07.09.11, 09:59
Bin grad dran (Kollege hat Probleme mit dem Plattenplatz, jetzt muss ich meine andere Arbeit erst mal liegen lassen).

Wer nur Robocopy aus dem rktools.exe extrahieren will benutzt am besten diese Anleitung:

http://copyrite.dyndns.biz/Robocopy.htm