Hallo Oliver
Folgendes VB-Script, das ich soeben gebastelt habe, macht genau das, also es verschiebt alle Dateien, die älter als 5 Stunden sind vom Quell- in den Ziel-Ordner. Als Parameter müssen der Quell- und der Ziel-Ordner (in dieser Reihenfolge) übergeben werden.
Wenn das Script unter FileMove.vbs gespeichert wird lautet der Aufruf also z. B.:
filemove c:\Daten c:\Archiv
Hier ist das Script:
Dim fso, folder, files, NewsFile
Dim FrmFld, ToFld, FrmFile
Set fso = CreateObject("Scripting.FileSystemObject")
'\*\*\* Es müssen 2 Parameter übergeben werden. \*\*\*
if wscript.arguments.count "\" then
FrmFld = FrmFld & "\"
end if
if right(ToFld,1) "\" then
ToFld = ToFld & "\"
end if
Set folder = fso.GetFolder(FrmFld)
Set files = folder.Files
'\*\*\* Alle Dateien im Quell-Ordner verarbeiten \*\*\*
For each folderIdx In files
FrmFile = FrmFld & folderIdx.Name
'\*\*\* Datei vom Quell- in den Ziel-Ordner verschieben, wenn sie älter als 5 Stunden ist \*\*\*
if DateAdd("h",5,folderidx.DateLastModified)
MfG
Roland
> Ich habe folgendes Problem: Ich möchte einen Windows (windows
> Vista) Scheduler aufsetzen der in einem bestimmten Verzeichnis
> nachschaut ob Files vorhanden sind, und diese dann selbständig
> in ein anderes Verzeichnis verschiebt. Wichtig ist, dass nur
> Files die zB. älter als 5 Stunden sind verschoben werden.
>
> Einen Scheduler aufsetzen der Files kopiert ist kein Problem,
> leider kann ich das Zeit-Attribut aber nicht mitgeben...
> heisst, es werden immer alle Files verschoben.
>
> Danke und Gruss,
>
> Oliver