Datein von "Heute" kopieren
-
Hallo,
ich suche eine Möglichkeit unter Windows Dateien mit einem bestimmten Datum zu kopieren.
Datum sollte immer "Heute" sein.Ich möchte damit Dateien aus einem tiefen Verzeichnis in ein leichter zugängliches kopieren. Das benötige ich ziemlich häufig, also mache ich das über eine Batchdatei. Derzeit kopiere ich einfach alle Dateien, das dauert aber lange und ich brauche auch meist nur die neuen. Die muss ich dann immer "raussuchen" (über sortieren nach datum).
Hat da jemand ne Idee/Tool?
Danke,
jenz
-
Ich schlage ein Powershell Script vor. Zum Beispiel sowas:
[ps]
Copy-Item (Get-ChildItem | where { $_.LastWriteTime -gt (Get-Date).Date }) c:\zielverzeichnis\
[/ps]
-
dazu brauche ich auch die powershell...
die hatte ich mal drauf, aber die war elendig langsam.aber vielleich habe ich da auch was falsch gemacht oder es gibt mehrere..
-
Dann schreib halt ein Programm.

-
Oder hast dus schon mal mit robocopy versucht?
-
Kann xcopy nicht sowas? Also ich bin mir ziemlich sicher, dass es geht.
Ansonsten installier die halt was gescheitest, Powershell, Cygwin oder ne Skriptsprache wie Ruby,Perl,... braucht man einfach um vernünftig arbeiten zu können.
-
jau, xcopy scheint es zu können.
danke, hätte ich auch drauf kommen können.für programmieren hätte ich jetzt mehr zeit gebraucht, als ich jetzt für xcopy einsetzen brauche...
ebenso mit den anderen vorschlägen...also gute wahl, erst mal zu fragen und dann zu entscheiden.
danke
-
jenz schrieb:
die hatte ich mal drauf, aber die war elendig langsam.
Das kann man durch die benutzung von "ngen" beheben, sodass die ps in einer angemessenen zeit da ist.
Siehe: http://blogs.msdn.com/powershell/archive/2008/07/11/speeding-up-powershell-startup.aspxAls admin ausführen
Set-Alias ngen @( dir (join-path ${env:\windir} "Microsoft.NET\Framework") ngen.exe -recurse | sort -descending lastwritetime )[0].fullName [appdomain]::currentdomain.getassemblies() | %{ngen $_.location}
-
gregr schrieb:
Das kann man durch die benutzung von "ngen" beheben, sodass die ps in einer angemessenen zeit da ist.
Siehe: http://blogs.msdn.com/powershell/archive/2008/07/11/speeding-up-powershell-startup.aspx
[/code]wie fricklig.... python geht ja noch einfacher...
-
Hm, wenn das nicht mit xcopy geht, solltest Du Dir direkt mal find (per Cygwin oder so) überlegen, damit ist das trivial.
Alles im aktuellen Verzeichnis, was innerhalb der letzten 24 Stunden geändert wurden, auflisten:
find . -mtime 0(Achtung, bei manchen Implementierungen-mtime 1, altes Problem...)
Die Suche oben auf Dateien einschränken:
find . -mtime 0 -type f
Diese Dateien irgendwohin kopieren:
find . -mtime 0 -type f -exec cp {} /pfad/zum/zielverzeichnis \;(Ja, ich weiß, die -exec-Syntax ist verdammt hässlich, aber find ist trotzdem sehr mächtig und funktioniert sehr zuverlässig.)
-
nman schrieb:
(Ja, ich weiß, die -exec-Syntax ist verdammt hässlich,
oft ist xargs eine gute Alternative
find ... | xargs cp -t /ziel