
145971
25.05.2021, aktualisiert um 10:26:15 Uhr
Xcopy schlägt öfters fehl
Guten Morgen !!
ich habe zwei Ordner:
C:\A
C:\B
In A befindet sich eine mdb Datei, welche öfters am Tag aktualisiert wird.
Dieses Datei hat einen dynamischen Namen, je nach Erstellungsdatum - z.B.:
DB-2021-05-25-0949.mdb
Dieses Datei möchte ich gerne in den Ordner B kopieren lassen, allerdings mit dem Namen DB.mdb
Habe dafür eine batch geschrieben, welche via Taskplaner 1x die Stunde ausgeführt wird:
Kurz zur Erklärung:
Schritt 1: kopiere die Datei DB-*.mdb von Ordner A nach B
Schritt 2: lösche die vorhandene DB.mdb im Ordner B
Schritt 3: Bennen die DB-*.mdb im Ordner um, auf DB.mdb
Das klappt in erster Linie ganz gut.
Allerdings kommt es irgendwann zu einem Fehler, den ich nicht reproduzieren / feststellen kann:
Inhalt Ordnerinhalt B sollte eigentlich nach dem o.g. Schema immer wie folgt aussehen:
- DB.mdb
Im Fehlerfall sieht dieser aber so aus:
- DB.mdb
- DB-2021-05-25-0949.mdb
Sprich: Schritt 1 wurde durchgeführt, Schritt 2 und ggf. 3 nicht mehr.
Könnt ihr euch das erklären?
Danke !!
ich habe zwei Ordner:
C:\A
C:\B
In A befindet sich eine mdb Datei, welche öfters am Tag aktualisiert wird.
Dieses Datei hat einen dynamischen Namen, je nach Erstellungsdatum - z.B.:
DB-2021-05-25-0949.mdb
Dieses Datei möchte ich gerne in den Ordner B kopieren lassen, allerdings mit dem Namen DB.mdb
Habe dafür eine batch geschrieben, welche via Taskplaner 1x die Stunde ausgeführt wird:
@echo off
xcopy "C:\A\DB-*.mdb" C:\B
del "C:\B\DB.mdb"
rename "C:\B\DB-*.mdb" DB.mdb
Kurz zur Erklärung:
Schritt 1: kopiere die Datei DB-*.mdb von Ordner A nach B
Schritt 2: lösche die vorhandene DB.mdb im Ordner B
Schritt 3: Bennen die DB-*.mdb im Ordner um, auf DB.mdb
Das klappt in erster Linie ganz gut.
Allerdings kommt es irgendwann zu einem Fehler, den ich nicht reproduzieren / feststellen kann:
Inhalt Ordnerinhalt B sollte eigentlich nach dem o.g. Schema immer wie folgt aussehen:
- DB.mdb
Im Fehlerfall sieht dieser aber so aus:
- DB.mdb
- DB-2021-05-25-0949.mdb
Sprich: Schritt 1 wurde durchgeführt, Schritt 2 und ggf. 3 nicht mehr.
Könnt ihr euch das erklären?
Danke !!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 667047
Url: https://administrator.de/forum/xcopy-schlaegt-oefters-fehl-667047.html
Ausgedruckt am: 29.04.2025 um 17:04 Uhr
11 Kommentare
Neuester Kommentar
moin
Gibt es eine Möglichkeit, das zu "Forcen"?
ne... aber evtl. nen dump zu erstellen.etc...
Frank
Zitat von @145971:
aktuell kann ich es nicht überprüfen, da der "Fehlerzustand" nicht aktiv ist im Moment.
Aber es kann durchaus sein, dass die Datei in Zugriff ist - wird von einem Server genutzt.
prima... was ist es den jetzt?aktuell kann ich es nicht überprüfen, da der "Fehlerzustand" nicht aktiv ist im Moment.
Aber es kann durchaus sein, dass die Datei in Zugriff ist - wird von einem Server genutzt.
Gibt es eine Möglichkeit, das zu "Forcen"?
Sprich: Löschen trotz Zugriff?
geht nicht... aber wir wissen ja auch nicht, um was es sich handelt!Frank
und bei Access gibt es zu jeder dateiname.mdb bzw dateiname.accdb eine dateiname.ldb Datei, die anzeigt, daß mindestens ein Client mit der MDB verbunden ist.
Man muß also prüfen ob eine dateiname.ldb da ist und dann den Kopierversuch abbrechen, MDBs die geöffnet sind kann man NICHT auf Dateisystemebene kopieren, das ginge dann nur mit einem Filesystem-Snapshot des gesamten Datenträgers.
Man muß also prüfen ob eine dateiname.ldb da ist und dann den Kopierversuch abbrechen, MDBs die geöffnet sind kann man NICHT auf Dateisystemebene kopieren, das ginge dann nur mit einem Filesystem-Snapshot des gesamten Datenträgers.
Moin,
löse das doch mit ROBOCOPY.
Der kann beim Kopieren die Datei direkt in DB.mdb umbenennen und die Zieldatei in diesem Zuge mit überschreiben.
Durch die Retry-Funktion kann er das mehrmals probieren, sollte ein anderes Programm noch einen kurzweiligeh Zugriff haben.
Einfach mal mit den Parametern von ROBOCOPY beschäftigen
Gruß
em-pie
löse das doch mit ROBOCOPY.
Der kann beim Kopieren die Datei direkt in DB.mdb umbenennen und die Zieldatei in diesem Zuge mit überschreiben.
Durch die Retry-Funktion kann er das mehrmals probieren, sollte ein anderes Programm noch einen kurzweiligeh Zugriff haben.
Einfach mal mit den Parametern von ROBOCOPY beschäftigen
Gruß
em-pie