xantares
Goto Top

Batchdatei erstellen

Kopieren von neuen Dateien

Hallo,

ich suche nach einer Möglichkeit, wie ich mit einem Batchprogramm nicht nur Dateien kopieren kann, sondern auch die vom aktuellen Tag. Es sind auf einem entferten PC über DFÜ immer mehrere Dateien gespeichert, nun möchte ich alle Dateien in einem Archivordner kopieren, und nur die aktuellste Datei (Datum von heute) in einem anderen Ordner verschieben.

Die Dateien beginnen alle mit X01***.ldt, jeden Tag werden dort neue Dateien mit einer Endung abgelegt.

Beispiel:

1. Tag: X0101391.ldt
2. Tag: X0101392.ldt
3. Tag: X0101393.ldt

usw.

Ein Script zum automatischen Abholen und Kopieren habe ich schon.

Jetzt fehlt mir dazu nur noch das kopieren der neuesten Datei in einem anderen Ordner.

Bin für jede Hilfe Dankbar.

Gruß aus Gießen, XAntares<

Content-Key: 3066

Url: https://administrator.de/contentid/3066

Printed on: April 25, 2024 at 03:04 o'clock

Member: nub4you
nub4you Oct 08, 2004 at 09:27:44 (UTC)
Goto Top
Versuche mal den Befehl xcopy.

mfg. nub4you
Member: meto
meto Oct 08, 2004 at 11:30:35 (UTC)
Goto Top
Hi!
Also mit xcopy /d:M-T-J wirst du auf jeden Fall das erreichen was du möchtest oder soll das aktuelle Datum von allein eingetragen werden ohne das du es z. B. über einen Parameter an die Batschdatei übergibtst?
Member: XAntares
XAntares Oct 08, 2004 at 15:13:05 (UTC)
Goto Top
Hallo,

vielen dank erstmal für die schnelle Hilfe.

Das Datum wird mir nicht immer bekannt sein, die Dateien sollen aus einem Ordner herausgeholt werden, und zwar immer die vom aktuellen Tag. Welcher Tag das jetzt nun auch gerade ist, habe es nun so geschrieben:

cd \\anderer-pc\u-verzeichnis1\u-verzeichnis2\archiv
mkdir "%date%"

aus diesem Verzeichnis wird danach die Datei umbenannt und in ein anderes Verzeichnis hinenkopiert.
Ursprünglich wollte ich alle Dateien in einem Archiv kopieren und dann nur das aktuellste vom heutigen Tage umbenennen und in ein anderes Verzeichnis kopieren.
Wenn ich den Befehl xcopy /d:M-T-J dafür benutze, muss ich da doch jedesmal ein aktuelles Datum angeben, oder?

Es sei denn, die Batchdatei kann den heutigen Tag mit der Datei vergleichen und dann die aktuellste herausholen.

Gruß aus Gießen, XAntares<
Member: Lord-Helmi
Lord-Helmi Oct 08, 2004 at 17:57:53 (UTC)
Goto Top
Hallo,

du kannst mit einer Batch-Datei auch das Datum vergleichen. Wie du das Datum mittels For-Schleife an eine Variable übergibst, habe ich in Erstellen einer Batchdatei mal beschrieben. Die Variable kannst du dann in deinem Script verwenden.

Gruß
Michael
Member: XAntares
XAntares Oct 09, 2004 at 11:24:38 (UTC)
Goto Top
Hi,

danke fürs Script, es werden damit ein Ordner erstellt, und alle Dateien (egal welches Datum dort rein kopiert), also auch die älteren.

Was muss ich daran ändern, damit nur die Datei von heute dort automatisch reinkopiert wird?

Gruß aus Gießen, XAntares<
Member: barbarossa
barbarossa Oct 15, 2004 at 07:28:29 (UTC)
Goto Top
Hallo,
hast du es schon mal mit robocopy als kopierbefehl probiert? Da hast du jede Menge Möglichkeiten unter anderem auch eine Protokollfunktion.
Das Tool ist in jedem Ressourcekit von Windows enthalten.
Member: pate4ever
pate4ever Oct 19, 2004 at 12:29:36 (UTC)
Goto Top
Mit folgender Zeile erhältst du in der Variable DATEINAMEN die neueste Datei, danach kommt eine Abfrage mit IF EXIST und du kannst natürlich mit dem COPY Befehl den Namen gleich ändern.

Beispiel (3 Zeilen: Set, For, If):
Set ORGVERZEICHNIS="c:\test"
FOR /F "tokens=*" %%i IN ('dir /B /OD /TW "%ORGVERZEICHNIS%\x01*.ldt"') DO set DATEINAMEN=%%i
IF NOT EXIST %ENDVERZEICHNIS%\%DATEINAMEN% THEN COPY "%ORGVERZEICHNIS%\%DATEINAMEN% %ENDVERZEICHNIS%\%DATEINAMEN%

Reine Batch Lösungen sind immer noch am besten!

Ciao
Member: XAntares
XAntares Oct 19, 2004 at 15:42:48 (UTC)
Goto Top
Hallo,

vielen Dank erstmal für die vielen Lösungen. Nun habe ich immer ein neues Unterverzeichnis mit mkdir "%date%" erstellt. dies erzeugt zwar jeden Tag immer ein neues Unterverzeichnis, ist dafür aber sehr viel einfacher umzusetzen. So kann ich die aktuelle Datei in dem aktuellen Datumsordner hineinkopieren und so archivieren, finde ich auch sehr ordentlich.
Das einzigste Problem dabei ist, wenn sich mehrere Dateien auf dem entfernten Server befinden, dann kann eine Datei nicht mehr genau zugeordnet werden kann, dürfte aber nicht passieren.

Gruß aus Gießen, XAntares<