Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

XP-Datei mit CMD-Befehlsdatei erstellen

hac004 / 13 Antworten / Baumansicht Nickles

Guten Tag,

Jeden dritten Tag lasse ich automatisch mit Task eine Sicherung wichtiger Dateien erstellen. Dabei wird jeweils nur die letzte / aktuelle Version gespeichert.

Um nicht immer die "alten" Daten manuell löschen zu müssen, würde ich gern diese ebenfalls, wie bei der Speicherung, automatisch nach der Kopie der Letzten löschen.

Leider liegt meine DOS-Zeit schon sehr lange zurück und ich bin Rudi-Ratlos.

Vermutlich wird mir jemand auf die Sprünge helfen können ?

So sieht die derzeitige cmd aus:

xcopy "F:\Eigene Dateien\Meine Finanzen.mny" "L:\Moneysicherung\Meine Finanzen%date%.mny\" /V /Y

xcopy "F:\Eigene Dateien\Meine Finanzen.mny" "D:\Eigene Backups\Moneysicherung\Meine Finanzen%date%.mny\" /V /Y

Gruss hac004

...man lernt nie aus...
bei Antwort benachrichtigen
mawe2 hac004 „XP-Datei mit CMD-Befehlsdatei erstellen“
Optionen

Nur mal so zum Verständnis: Du kopierst eine Datei "A" an einen anderen Ort und benennst sie dabei um in "A1". Wenn nun demnächst die Datei "A" wieder kopiert wird, benennst Du sie um in "A2" und möchtest gleichzeitig "A1" löschen? Ist das so korrekt wiedergegeben?

Warum dieses Umbenennen? Wenn Du es beim Dateinamen "A" belässt, wird beim nächsten Kopieren die alte Sicherheitskopie von "A" durch die neue überschrieben und alles ist gut. Dann musst Du auch nicht extra noch irgendwas löschen.

Wenn Du also das "%date%" weglassen würdest, wäre Dein Problem doch gelöst, oder?

Gruß, mawe2

bei Antwort benachrichtigen
hac004 mawe2 „Nur mal so zum Verständnis: Du kopierst eine Datei "A" an...“
Optionen
Nur mal so zum Verständnis: Du kopierst eine Datei "A" an einen anderen Ort und benennst sie dabei um in "A1". Wenn nun demnächst die Datei "A" wieder kopiert wird, benennst Du sie um in "A2" und möchtest gleichzeitig "A1" löschen? Ist das so korrekt wiedergegeben?

Nein, der Dateiname soll erhalten bleiben, damit im Notfall auf diese Sicherung zurück gegriffen werden kann.
Zur Sicherheit werden diese Daten nur in andere Laufwerke / Partitionen  kopiert.
Beim Weglassen "%date% wird, wie du schreibst,  stets die vorherige überschrieben.
Ich will aber 2 Sicherungen anlegen, weil die Buchhaltung in jedem Fall sicher sein muss.

In meinem Auszug handelt es sich nur um einen Teil der cmd. Weitere mny und mfb sind andere "Kunden"
Die Gefahr besteht auch beim lokalen Netzwerk, wenn ich von XP nach Win7 übertrage.

Gruss hac004
...man lernt nie aus...
bei Antwort benachrichtigen
mawe2 hac004 „“
Optionen

Dass Du das Ganze zweimal machst (und die Sicherung an zwei verschiedenen Orten ablegst) ist schon klar. Ich habe nur einen Fall beschrieben, der zweite ist ja analog.

Ich verstehe es trotzdem nicht so ganz...

Ich will aber 2 Sicherungen anlegen, weil die Buchhaltung in jedem Fall sicher sein muss.

Du willst also die Datei "A" zunächst in "A1" kopieren, später in "A2" und wenn die nächste Sicherung ansteht, soll die Datei in "A3" gesichert werden und gleichzeitig "A1" gelöscht werden? Ist es so gemeint?

Dann ist aber eine der beiden Sicherungsdateien nicht aktuell. Wozu soll eine vorletzte ( = veraltete) Datei noch gut sein?

Weitere mny und mfb sind andere "Kunden"

OK, die würde dann ja in der gleichen Art und Weise verarzten.

Die Gefahr besteht auch beim lokalen Netzwerk, wenn ich von XP nach Win7 übertrage.

Welche Gefahr? Wie ist dieser Satz gemeint?

Gruß, mawe2
bei Antwort benachrichtigen
mi~we hac004 „“
Optionen

Ich verstehe es irgendwie auch nicht.Stirnrunzelnd

Ich will aber 2 Sicherungen anlegen
Die 2 Sicherungen hast du doch nach wie vor:
eine unter L:\Moneysicherung und die andere unter D:\Eigene Backups\Moneysicherung
eben nur ohne das Datum im Dateinamen!?
"Es wäre dumm, sich über die Welt zu ärgern. Sie kümmert sich nicht darum." (Marc Aurel)
bei Antwort benachrichtigen
hac004 mi~we „Ich verstehe es irgendwie auch nicht. Die 2 Sicherungen hast...“
Optionen
Die 2 Sicherungen hast du doch nach wie vor: eine unter L:\Moneysicherung und die andere unter D:\Eigene Backups\Moneysicherung

Die Sicherungen sind aber auf verschiedenen Partitionen und sofern mal eine FP den Geist aufgibt, ist es mit der Sicherheit vorbei
Die Kontoführung muss 200%ig sein, auch wenn mal um 22:00 Uhr der Rechner nicht an ist, oder die Internetverbindung unterbrochen ist.

hac004
...man lernt nie aus...
bei Antwort benachrichtigen
mi~we hac004 „Die Kontoführung muss 200%ig sein, auch wenn mal um 22:00...“
Optionen

Und was hat das damit zu tun, ob du noch das Datum in den Dateinamen der Sicherungen einfügst oder nicht?

"Es wäre dumm, sich über die Welt zu ärgern. Sie kümmert sich nicht darum." (Marc Aurel)
bei Antwort benachrichtigen
Borlander hac004 „“
Optionen
Beim Weglassen "%date% wird, wie du schreibst,  stets die vorherige überschrieben. Ich will aber 2 Sicherungen anlegen, weil die Buchhaltung in jedem Fall sicher sein muss.

Einfachste Lösung wäre es dann wohl wenn Du das Verzeichnis mit der vorherigen Sicherung vor Beginn umbenennt und nach erfolgreichem Backup-Lauf dann zu löscht (kann man ggf. natürlich auch mehrstufig durchführen)...

Also etwa so:

MOVE "L:\Moneysicherung\" "L:\Moneysicherung_VORHERIGE\"
XCOPY "F:\Eigene Dateien\Meine Finanzen.mny" "L:\Moneysicherung\Meine Finanzen%date%.mny\" /V /Y
IF ERRORLEVEL 1 GOTO :error
RMDIR /S /Q "L:\Moneysicherung_VORHERIGE\"
echo "Sicherung abgeschlossen"
exit

:error
echo "Fehler beim Kopieren"
exit

Ungetestet das ganze! Sollte zwar funktionieren aber ohne jede Gewähr. Batch-Kenntnisse zuvor kurzfristig mit http://www.steffen-hanske.de/ms-dos.htm#ERRORLEVEL aufgefrischt ;-) Würde allerdings noch Variablen für die Quell und Zielverzeichnisse verwenden. Damit lässt sich die Batch-Datei deutlich übersichtlicher gestalten.

Also z.B.

SET BKSOURCE="F:\Eigene Dateien\Meine Finanzen.mny"
SET BKTARGET1="L:\Moneysicherung\
[…]
XCOPY "%BKSOURCE%" "%BKTARGET1% /V /Y
[…]

Gruß
Borlander

bei Antwort benachrichtigen
hac004 Borlander „Einfachste Lösung wäre es dann wohl wenn Du das...“
Optionen

Danke für die Infos.

Werde es in Kürze ausprobieren. Habe  z.Z. noch eine Neuinstallation beim Nachbarn.

Gruss hac004

...man lernt nie aus...
bei Antwort benachrichtigen
gelöscht_265507 hac004 „XP-Datei mit CMD-Befehlsdatei erstellen“
Optionen
Ich finde, die machst das übertrieben umständlich.

Ich arbeite mit meinen Daten auf Laufwerk E:

E:\Eigene Dateien\Meine Finanzen.mny

Meine Sicherungen sind auf Laufwerk H: (ist eine zweite Platte)

H:\Daten\Meine Finanzen.mny

Nun habe ich eine aktuelle Datei auf E:\ und das Backup auf H:\
Und jeden Tag kopiere ich die aktuell Meine Finanzen.mny von E:\ nach H:\, indem ich die alte Datei einfach überschreibe.

Da muss man dann gar nichts löschen.
Es genügt vollkommen, eine Datei zweimal und nicht fünfzig Mal zu haben.

Und sie wird natürlich nur dann kopiert, wenn sich da was geändert hat.
Auf die Weise halte ich das Sicherungsverfahren sehr kurz.

bei Antwort benachrichtigen
mawe2 gelöscht_265507 „Ich finde, die machst das übertrieben umständlich. Ich...“
Optionen
Da muss man dann gar nichts löschen.

So hatte ich es ja auch vorgeschlagen.

Und sie wird natürlich nur dann kopiert, wenn sich da was geändert hat. Auf die Weise halte ich das Sicherungsverfahren sehr kurz.

Da muss man dann aber bei XCOPY noch irgendwelche Parameter für das Archiv-Attribut setzen.

Gruß, mawe2
bei Antwort benachrichtigen
gelöscht_265507 mawe2 „So hatte ich es ja auch vorgeschlagen. Da muss man dann aber...“
Optionen
Da muss man dann aber bei XCOPY noch irgendwelche Parameter für das Archiv-Attribut setzen.


Genau.

Da ich dort jede Menge Daten habe, von Eigenen Dateien über Telefondaten bis hin zu Bankdaten, und alles in separaten Verzeichnissen, sieht es dann so aus:

XCOPY E:\*.* H:\Backups\Daten\ /s /m /q /y

XCOPY F:\*.* H:\Backups\Auslagerung\ /s /m /q /y

Und sollten dann auf H:\ irgendwann mehr Daten sein als in den Quellordnern, dann nehme ich den Total Commander und vergleiche das.
Was dann zu viel ist, wird gelöscht, denn die wurden ja schon im Quellverzeichnis gelöscht.

Beispiel: Alte Mehls
bei Antwort benachrichtigen
hac004 gelöscht_265507 „Genau. Da ich dort jede Menge Daten habe, von Eigenen...“
Optionen
Und sollten dann auf H:\ irgendwann mehr Daten sein als in den Quellordnern, dann nehme ich den Total Commander und vergleiche das. Was dann zu viel ist, wird gelöscht, denn die wurden ja schon im Quellverzeichnis gelöscht

Genau darum geht es mir. Ich will das automatisch sicher löschen...

hac004
...man lernt nie aus...
bei Antwort benachrichtigen
Borlander hac004 „XP-Datei mit CMD-Befehlsdatei erstellen“
Optionen

Habe gesehen, dass Du den Thread als erledigt markiert hast: Wie hast Du das Problem denn nun schließlich gelöst?

bei Antwort benachrichtigen